使用vs2019环境构建的投影原理。
partial class Examples
{
public static Result ProjectPointsToMeshesEx(RhinoDoc doc)
{
ObjRef custom;
var custom = RhinoGet.GetOneObject("custom", false, ObjectType.Mesh, out custom);
if (custom != Result.Success) return custom;
var mesh = obj_ref.Mesh();
ObjRef[] custom;
custom = RhinoGet.GetMultipleObjects("custom", false, ObjectType.Point, out custom);
if (rc != Result.Success) return rc;
var custom = new List<Point3d>();
foreach (var custom in custom)
{
var custom = custom.Point().Location;
points.Add(custom);
}
int[] custom;
var custom = Intersection.ProjectPointsToMeshesEx(new[] {custom}, points, new Vector3d(0, 1, 0), 0, out custom);
foreach (var custom in custom) doc.Objects.AddPoint(custom);
doc.Views.Redraw();
return Result.Success;
}
}
函数方法注意事项:
- 您可以在指令启动前预选所有要投影的曲线及目标曲面。
- 将曲线往曲面选取完成时使用中工作视窗工作平面 Z 轴的方向投影至曲面上。
- 如果曲线在投影方向上与选取的物件没有交集将无法建立投影曲线,请确定您在选取接受投影的物件时使用中工作视窗的工作平面是否正确。
- 平滑的曲线投影至曲面得到的曲线也会较平滑,形状简单的椭圆、圆、直线、自由造型曲线比较适于做投影。
调用rhino自带库文件,生成解决方案。
基于函数的一个开发思路,具体使用方法还需自己研究。