//二维文字创建
public void Create2DTextModel()
{
BPDocument doc = BPApplication.singleton().activeDocument;
BPViewport view = doc.viewManager.getActivedViewport();
BPModel model = doc.modelManager.activeModel;
BPGraphicUtil.deleteGraphicsOfModel(doc, model); //清空模型空间的模型
BPGraphics g = new BPGraphics();
BPTextProperties pro = BPTextProperties.create("宋体", "", new GePoint2d(2, 2), model);
GeRotMatrix matrix = GeRotMatrix.createByVectorAndRotationAngle(new GeVec3d(1, 0, 0), (Math.PI / 180) * 90);//(Math.PI / 180) * 90 弧度制
BPText text = BPText.create("测试", new GePoint3d(0, 0, 0), matrix, pro);
g.addText(text);
g.save();
}
//三维文字创建
public void Create3DTextModel()
{
BPDocument doc = BPApplication.singleton().activeDocument;
BPViewport view = doc.viewManager.getActivedViewport();
BPModel model = doc.modelManager.activeModel;
BPGraphicUtil.deleteGraphicsOfModel(doc, model); //清空模型空间的模型
BPGraphics g = new BPGraphics();
GeTransform transform = GeTransform.createByLineAndRotationAngle(new GePoint3d(0, 0, 0), new GePoint3d(1, 0, 0), (Math.PI / 180) * 90);
BPTextProperties pro = BPTextProperties.create("宋体", "", new GePoint2d(2, 2), model);
GeRotMatrix matrix = GeRotMatrix.createByVectorAndRotationAngle(new GeVec3d(1, 0, 0), (Math.PI / 180) * 90);//(Math.PI / 180) * 90 弧度制
List<List<BIMBaseCS.Geometry.IGeSolidBase>> threeDim = BPThreeDim.createThreeDimText("三维文字测试", new GePoint3d(0, 0, 0), matrix, pro, 1);
foreach (var item in threeDim)
{
foreach (var item2 in item)
{
item2.transform(transform);//旋转90度
g.addSolid(item2);
}
}
g.save();
}
【BIMBase】创建字体模型
最新推荐文章于 2024-09-10 21:03:55 发布