草庐IT

几何学

全部标签

解析几何:计算两条线段的交点

大家好,我是前端西瓜哥。今天来实现计算两条线段的交点的解析几何算法。我们要实现getLineSegIntersection方法:提供两条线段,计算它们的交点。每条线段会用两个点坐标表示。constgetLineSegIntersection=(p1,p2,p3,p4)=>{//待实现}//测试用例getLineSegIntersection({x:1,y:1},{x:4,y:4},{x:1,y:4},{x:4,y:1});//期望{x:2.5,y:2.5}思路思路很简单,就是解两条直线对应的一个二元一次方程组,求出x和y。如果无解或多解,说明直线平行,交点不存在。如果有解,可拿到唯一交点,但也

javascript - 使用 Mongoose 添加几何集合

我在Angular中构建了一个表单,以使用Mongoose将GeoJSON功能添加到MongoDB。这些功能包括几个属性和一个带有点和线串的GeometryCollection。问题来了:我能够在我的几何图形中只用一个点创建特征,但我无法用使用lineString的几何集合创建特征。我得到:16755Can'textractgeokeysfromobject,malformedgeometry?或:{[CastError:Casttonumberfailedforvalue"0,0,1,1"atpath"coordinates"]message:'Casttonumberfailedf

javascript - Node 的 Mongodb findOne 函数不返回几何数据

我在尝试让mongo正确返回几何数据时遇到了一些问题。当我直接在mongoshell中运行db.shapes_houses.findOne({'properties.IDENTIFCAT':'0373100000004063'}函数时,我得到了我需要的正确结果:{"_id":ObjectId("576bfc6d669adc5c2556676b"),"type":"Feature","properties":{"IDENTIFCAT":"0373100000004063","VOETPRINT":62.423811},"geometry":{"type":"Polygon","coord

C#几何算法:空间索引——Quadtree四叉树及应用(一)

目录前言什么是四叉树?四叉树的原理结语前言        最近在CAD中开发拓扑检查和空间分析功能时发现,传统的双层递归法会极大的降低程序运行速度,就比如:图上有1000个图形,我们要求图形之间的交点,传统的作法就是遍历两次图形,在两次循环中分别对图形求交处理,对于图形较少的情况,传统的双层递归法也不会太多的影响程序的效率,但是如果图上有10000个图形,或者更多图形呢?按照传统的双层递归法来运算显然是不太可能的,可能会直接导致CAD无响应,大幅度影响计算效率。为了解决这个问题,针对大量图形进行空间运算的时候就必须用到空间索引了。    我们用过GIS软件的小伙伴就能感受到GIS的空间分析功能

opencv-22 图像几何变换01-缩放-cv2.resize()(图像增强,图像变形,图像拼接)

什么是几何变换?几何变换是计算机图形学中的一种图像处理技术,用于对图像进行空间上的变换,而不改变图像的内容。这些变换可以通过对图像中的像素位置进行调整来实现。常见的几何变换包括:平移(Translation):将图像在水平和/或垂直方向上进行平移,即将图像的每个像素沿着指定的距离进行移动。缩放(Scaling):通过增大或减小图像的尺寸,使图像变得更大或更小。在缩放过程中,图像中的每个像素的位置会相应地调整。旋转(Rotation):将图像绕着一个特定的旋转中心进行旋转,使得图像的内容按照指定的角度进行旋转。翻转(Flip):将图像在水平和/或垂直方向上进行翻转,即将图像的像素按照指定的方向进

【计算机视觉|人脸建模】PanoHead:360度几何感知的3D全头合成

本系列博文为深度学习/计算机视觉论文笔记,转载请注明出处标题:PanoHead:Geometry-Aware3DFull-HeadSynthesisin360∘^{\circ}∘链接:[2303.13071]PanoHead:Geometry-Aware3DFull-HeadSynthesisin360∘^{\circ}∘(arxiv.org)摘要最近,在计算机视觉和计算机图形领域,对3D人头的合成和重建引起了越来越多的关注。现有的最先进的3D生成对抗网络(GANs)用于3D人头合成的模型要么仅限于近前视图,要么难以在大视角下保持3D一致性。我们提出了PanoHead,这是第一个3D感知的生成

详解坐标变换矩阵

在高级驾驶辅助系统(ADAS)领域,存在多种常用的坐标系:LiDAR坐标系、车辆坐标系、相机坐标系、图像坐标系等。在笔者最近的实习过程中,和这些坐标系频繁打交道。作为第一次在CSDN发文,本文将详细总结坐标变换矩阵。目录1.何为坐标变换矩阵(TransformationMatrix)2.旋转变换矩阵(RotationMatrix)3.缩放变换矩阵(ScaleMatrix)4.平移变换矩阵(TranslationMatrix)5.综合变换6.小结1.何为坐标变换矩阵(TransformationMatrix)首先要回答一个问题,何为坐标变换矩阵呢?“横看成岭侧成峰,远近高低各不同”,这说明了参照

线性代数的学习和整理5: 矩阵的加减乘除及其几何意义

目录1矩阵加法1.1矩阵加法的定义1.2加法的属性1.2.1只有同类型,相同n*m的矩阵才可以相加1.2.1矩阵加法的可交换律:1.2.2矩阵加法的可结合律:1.3矩阵加法的几何意义2 矩阵的减法2.1矩阵减法定义和原理基本同矩阵的加法2.2矩阵减法的几何意义3矩阵标量乘法/也称数乘3.1数乘的定义3.2矩阵的标量乘法的性质3.3几何意义:就是正向/反向的伸缩4左乘&右乘(很简单概念,但是需要界定语言的严谨性)4.1搞清楚主体:谁的左乘?右乘?4.2搞清楚方向:什么是左乘和右乘 4.3一般的线性代数公式 AX=Y,表示x左乘矩阵A5矩阵的点乘:得到的点积/内积5.1详细的矩阵乘法规则5.1.1

使用路径标记几何形状创建重新加载按钮

我想使用WPF路径标记语法创建重新加载图标。图标将看起来像这样:问题是我不知道如何使用例如椭圆弧正确创建一个开放圆圈。我已经创建的类似按钮是以下内容。我的重载按钮应处于相同的比例。看答案如前所述-您可以使用Inkscape让程序绘制您的Path-检查教程这里如果您对第三方图书馆感觉还可以-我建议您FONT很棒的WPF这是个病得很重NuGetpackage并包括重新加载Icon就像您的问题中所示。它也有很多下载-因此不要担心使用它。它也有一个麻省理工学院许可证-什么很酷。你也可以查看他们的存储库-它是开源。附加信息:如何使用Path在一个Button:请不要忘记添加ressources。您也可以

mongodb - 将地理数据导入 Mongodb 时出错 : Can't extract geo keys from object, 畸形几何

我正在尝试将一些地理数据(超过40K)导入mongodb(3),但有时我会遇到一些文档的错误:"code":16755,"errmsg":"insertDocument::causedby::16755Can'textractgeokeysfromobject,malformedgeometryIhavecheckedthedocumentandit'savalidgeojson,respectingmongodbformat[long,lat].AndwhenIinsertthedocumentwithoutthepolygon,itworks...Icannotfigureoutw