# 柱子 Item 示例
::: details 目录
[[toc]]
:::
## 源代码
## 代码说明
### 数据说明
``` json5
Columns:[
{
Name: '', // 名称
OutLine: [
[{X:0,Y:0,Z:0},...], // 外轮廓
... // 内轮廓
], // 轮廓线
RoomBoundary: '', // 房间边界
Location: {X:0,Y:0,Z:0}, // 位置
ModelId: '', // 模型id
SourceId: '', // 对应Revit模型id
},
...
]
```
::: tip
1、柱子可能有多个块组成
2、柱子不会挖洞,是累加
3、内外轮廓数据无排序要求
4、轮廓数据单位均为毫米
:::
### 计算边界矩阵
不能在绘制的时候计算,因为绘制是高频调用方法,尽量不要在绘制方法中做大量计算工作;
计算方法一般在数据变化的时候做,如果只是展示的话,则只需要在构造函数中计算一次;
### Y轴取反
revit 使用的坐标系与 canvas 使用的坐标系 Y 轴是相反的; revit 坐标使用的是数学坐标系, Y 轴方向是向上的, canvas 坐标使用的绘图坐标系, Y 轴方向是向下的;
数据是通过 revit 模型导出
## 绘制示例
::: details 查看代码
<<< @/docs/.vuepress/components/big/items/column.vue
:::