# 管道创建工具

管道创建工具(TubeTool)由 @tx3d/extension 包提供。

import { TubeTool ,TubeToolParameters } from '@tx3d/extension';

//参数
const params:TubeToolParameters = {

    adsorbDistance: 0.05,   //吸附距离
    radius: 0.01,           //绘制管道半径
    partUrl: './assets/models/三维组态/阀大.glb'    //附加物url

};

// 添加管道创建工具
const tubeTool = engine.toolManager.addTool( TubeTool,params );

// 激活管道创建工具
engine.toolManager.activateTool(TubeTool);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

提示

管道创建工具参数,详见TubeToolParameters

# 属性

🌏 activeCreate 激活创建

tubeTool.activeCreate = true;
1

提示

激活创建属性默认是开启的 如果不开启是不会创建管道的 可以用来调整起始绘制点的位置 例如想在空中某个位置当做起点绘制管道。

🌏 adsorbDistance 吸附距离

tubeTool.adsorbDistance = 0.01;
1

提示

吸附距离表示的是 当前点距离目标多少距离的时候 自动吸附上去,值越大吸附的灵敏度越高。

🌏 curRadius 当前创建管道宽度

tubeTool.curRadius = 0.05;
1

🌏 partUrl 附加部件url

tubeTool.partUrl = './assets/models/三维组态/阀大.glb';
1

🌏 nodeDistance 节点间距

tubeTool.nodeDistance = 1.5;
1

提示

节点距离只有在编辑和创建模式下才会有效。当无效时 设置值不生效 获取值为-1。

# 接口

🌏 switchModel 切换状态

tubeTool.switchModel( TubeToolModel.EDIT ); // TubeToolModel.CREATE TubeToolModel.EDIT TubeToolModel.ADDITION
1

# 使用说明

说明

编辑器有三种模式 分别是 创建模式 编辑模式 和 添加附加物模式。
通过switchModel方法来切换模式。
参数有 TubeToolModel.CREATE TubeToolModel.EDIT TubeToolModel.ADDITION。
所有操作均支持撤销和重做功能。

# 创建模式

说明

通过拖动坐标轴来控制当前绘制点位置。

何时开始创建? 在第一次拖动坐标轴时 开始创建一条新的管道 在每次拖动过程中 如果当前点和下一个目标点位置 不在一条直线上 则自动插入关键点。

何时结束创建? 在鼠标点击任意位置时 结束这条管线的绘制。

鼠标单击功能
当单击到管线上和中间节点上 则会触发打断机制,打断管线。
当单击到其他物体上 则会触发定位机制,定位到当前点击的位置。

拖动坐标轴结束后
当前绘制点在其他管道的端点、中间节点、连接点、管道上时会触发连接功能,连接管道,并且结束当前绘制。

# 编辑模式

说明

首先单击选中要操作的节点。

移动选中的节点到任意位置。

当节点移动到其他管线上的 端点、中间节点、连接点、管道上 时会触发连接功能,连接管道。

# 附加物模式

说明

首先设置要添加部件的资源路径,可以在初始化工具时通过参数添加,也可以后续通过partUrl属性来设置资源路径

然后通过鼠标右键单击管道上 添加对应附加物。

后续可通过平移旋转工具调整附加物的旋转和位置。

# 节点距离说明

说明

节点之间的距离会在每个节点上显示。代表当前节点距离前一个节点的距离。

通过nodeDistance属性可以调整当前节点距离。

只有在创建模式和编辑模式下可以调整节点距离。

Last Updated: 5/9/2023, 2:46:02 PM