- 博客(15)
- 收藏
- 关注
原创 几何库推荐
1. Opennurbs: What is openNURBS?The openNURBS Toolkit reads and writes all Rhino 3DM files. Additionally, the openNURBS Toolkit provides NURBS evaluation tools and elementary geometric and 3D view manipulation tools.2. OpenCascade : opencascade OpenCasc
2020-10-22 16:25:18 1811
原创 Parametric Surface-Surface Intersect
Marching methodsReference : Why CAD Surface Geometry is InexactIncremental progression along the intersection curve.This method use starting points on the intersection curve to obtain new points evaluating the tangent direction of the curve.search f
2020-10-22 15:19:45 413
原创 距离容差来源
外部:1.1 捕捉或者吸附不够好, 导致下游计算出现近似重合/近似平行/近似相切等问题1.2 不同系统间数据转换内部:Surface-Surface求交/ 投影算法等产生的结果曲线实际上是一堆点(数值解)的拟合。这一堆点的距离不能小于距离容差。...
2020-10-22 12:18:11 253
原创 Boolean Algorithm On Brep
先介绍下Boolean运算的思路:对于每一个Face: 求交, 裁剪,分割根据交并差选择有效的subFaces,重新组装成新的Soild对于第一步,有两种思路:思路1:surf surf intersect, we get intersect curvesfor each curve, split by 2d Parameter Space or 3d Loops, we get ...
2020-10-22 12:01:55 278
原创 几何算法容差分类
数值容差 OCCT/Opennurbs, ACIS 1.0e-11数值大小:double数值计算精度16位, 4位舍入所以一般取 1.0e-12解决问题:0.1+0.2 !== 0.3num1 > num2 + tol !== num1 - num2 > tolMath.sqrt(2)*Math.sqrt(2) !== 2几何算法系统决定, 外部用户不可操作线性容差/距离容差/全局容差/容差/公差数值大小: 几何上最小的距离尺度高几个量级,机械一般为1.0..
2020-10-21 14:08:38 2265
原创 判断四个点是否构成矩形
判断四个点是否构成矩形https://stackoverflow.com/questions/2303278/find-if-4-points-on-a-plane-form-a-rectangle//判断4个点是否构成矩形(OBB)bool isRectangle(double x1, double y1, double x2, double y2, double x3, double y3, do
2020-09-14 13:23:09 1833 1
原创 Opencascade TopoDS_Shape Orientation
Opencascade拓扑-几何介绍本文主要介绍TopoDS_Shape的Orientation属性:Opencascade拓扑-几何介绍 de 第三四五节里会看到:Edge orientationFace orientationMore on location and orientation本文用分析opennurbs的角度去理解Orientation一: Edge HalfE...
2019-11-26 19:18:22 2039
原创 Opennurbs Boundary Representation Oritation
Opennurbs Brep Data Structure Opennurbs数据结构里的 m_Reversed flag 共计4处,Edge 和 Curve3d 之间的 m_Reversed1Trim 和 Curve2d 之间的 m_Reversed2Trim 和 Edge 之间的 m_Reversed3Face 和 Surface 之间的 m_Reversed4下面详细介绍下...
2019-11-14 13:42:33 787 1
原创 NURBS求交 细分法
对于Bezier曲线, getPoint的效率 == Split的效率 (verb == opennurbs)对于Nurbs曲线, 是否相等对于nurbs曲面的离散, verb的方法和opennurbs的方法效率比较(理论上)verb是采点,并没有打断曲线opennurbs 是构造细分树...
2019-11-13 11:24:04 848
原创 Opennurbs Opencascade 性能比较 之 NurbsSurface
static ON_NurbsSurface* ToOpenNurbsSurface(const Handle(Geom_BSplineSurface) surface) { int m_dim = 3; bool isUPeriodic = surface->IsUPeriodic(); bool isVPeriodic = surface->IsVPeriodic();...
2019-11-11 16:18:41 1025
原创 开源几何求交库
开源求交库项目ValueSISLhttps://www.sintef.no/en/software/sisl/OpenNurbshttps://brlcad.org/Verb-Nurbshttp://verbnurbs.com/OCCThttps://www.opencascade.com/GoToolshttps://www.sintef....
2019-08-09 13:04:40 480
原创 Opennurbs Opencascade 性能比较 之 NurbsCurve
Opennurbs Opencascade 性能分析Nurbs2d曲线ToOpenNurbs 函数测试了一个圆的Nurbs2d曲线Geom_BSplineCurve* nurbs = ; int N = 10000000; double time = 0; LARGE_INTEGER nFreq; LARGE_INTEGER nBeginTime; LARGE_INTEGER nE...
2019-08-09 12:38:16 4273 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人