c# Addin 关于mirror3d方法的问题

我想画出实体截面的一半然后生成一半截面然后想通过mirror3d的方法画出一个整截面然后用ExtrudeClosedPlanarCurve生成实体,可是镜像没有实现?不知道问题出在哪?下面是相关代码。

Application app = Utilities.ComApp;

LineElement oLine;

Point3d[] pntArray_out = new Point3d[10];
pntArray_out[0] = app.Point3dFromXYZ(dx, dy, dz);
pntArray_out[1] = app.Point3dFromXYZ(dx, dy - (tBO1 + tBO2 + tBO3), dz);
pntArray_out[2] = app.Point3dFromXYZ(dx, dy - (tBO1 + tBO2 + tBO3), dz - tHO1);
pntArray_out[3] = app.Point3dFromXYZ(dx, dy - (tBO3 + tBO2), dz - (tHO1 + tHO2));
pntArray_out[4] = app.Point3dFromXYZ(dx, dy - (tBO3), dz - (tHO1 + tHO2 + tHO3));
pntArray_out[5] = app.Point3dFromXYZ(dx, dy, dz - (tHO1 + tHO2 + tHO3));

Poin

t3d p = app.Point3dFromXYZ(dx + 100, dy, dz);
oLine = app.CreateLineElement1(null, ref pntArray_out);
oLine.Color = 0; oLine.LineWeight = 1;
oLine.Mirror3d(ref pntArray_out[0], p, ref pntArray_out[5]);


Point3d[] pntArray_inl = new Point3d[10];
pntArray_inl[0] = app.Point3dFromXYZ(dx, dy - tBI2_1, dz - tHI1 - tHI2);
pntArray_inl[1] = app.Point3dFromXYZ(dx, dy - tBI1_1 - tBI2_1, dz - tHI1);
pntArray_inl[2] = app.Point3dFromXYZ(dx, dy - tBI1_2 - tBI2_1, dz - tHI1);
pntArray_inl[3] = app.Point3dFromXYZ(dx, dy - tBI1 - tBI2_1, dz - tHI1 - tHI2);
pntArray_inl[4] = app.Point3dFromXYZ(dx, dy - tBI1 - tBI2_1, dz - tHI1 - tHI2 - tHI3);
pntArray_inl[5] = app.Point3dFromXYZ(dx, dy - tBI3 - tBI2_1, dz - tHI1 - tHI2 - tHI3 - tHI4);
pntArray_inl[6] = app.Point3dFromXYZ(dx, dy - tBI3_2 - tBI2_1, dz - tHI1 - tHI2 - tHI3 - tHI4 - tHI5);
pntArray_inl[7] = app.Point3dFromXYZ(dx, dy - tBI3_1 - tBI2_1, dz - tHI1 - tHI2 - tHI3 - tHI4 - tHI5);
pntArray_inl[8] = app.Point3dFromXYZ(dx, dy - tBI2_1, dz - tHI1 - tHI2 - tHI3 - tHI4);
pntArray_inl[9] = pntArray_inl[0];
LineElement inLinel;
inLinel = app.CreateLineElement1(null, ref pntArray_inl);
inLinel.Color = 0; inLinel.LineWeight = 1;

inLinel.Mirror3d(ref pntArray_out[0], p, ref pntArray_out[5]);

app.ActiveModelReference.AddElement(app.SmartSolid.ExtrudeClosedPlanarCurve(inLinel, dlong, 0));


app.ActiveModelReference.AddElement(app.SmartSolid.ExtrudeClosedPlanarCurve(oLine, dlong, 0));

Parents Reply Children