VTK中创建圆柱体

1 使用vtkCylinderSource来创建。vtkCylinderSource可以创建沿着世界坐标系Y轴方向的圆柱体,但是不能任意设置圆柱体长轴的方向。

vtkSmartPointer<vtkCylinderSource> cylinder = vtkSmartPointer<vtkCylinderSource>::New();
cylinder->SetHeight(20.0);
cylinder->SetCenter(origin[0] - 5.0 * normal[0], origin[1] - 5.0 * normal[1], origin[2] - 5.0 * normal[2]);
cylinder->SetRadius(3.0);
cylinder->SetResolution(100);


2 如果已经知道了圆柱长轴的两个端点,可以结合vtkLineSource和vtkTubeFilter来生成具有方向性的圆柱体

vtkSmartPointer<vtkLineSource> line = vtkSmartPointer<vtkLineSource>::New();
line->SetPoint1(origin[0], origin[1], origin[2]);
line->SetPoint2(origin[0] - 5.0 * normal[0], origin[1] - 5.0 * normal[1], origin[2] - 5.0 * normal[2]);

vtkSmartPointer<vtkTubeFilter> tubeFilter = vtkSmartPointer<vtkTubeFilter>::New();
tubeFilter->SetInputConnection(line->GetOutputPort());
tubeFilter->SetRadius(3.0);
tubeFilter->SetNumberOfSides(100);
tubeFilter->CappingOn();


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值