点实体 (DotEnt)
大约 1 分钟
点实体 (DotEnt)
DotEnt 表示 CAD 中的点实体,用于标记位置。
概述
点实体是最简单的图形元素,只包含一个位置坐标。点的显示样式由系统变量控制。
构造函数
import { DotEnt, Point2D } from 'vjcad';
// 简化写法(推荐)
const dot1 = new DotEnt([100, 100]);
// 带大小参数
const dot2 = new DotEnt([100, 100], 2);
// Point2D 写法
const dot3 = new DotEnt(new Point2D(100, 100));
dot1.setDefaults();简化写法
构造函数和 base 属性都支持 [x, y] 数组形式的坐标。
属性
| 属性 | 类型 | 说明 |
|---|---|---|
position | Point2D | 点的位置坐标 |
方法
几何变换
import { DotEnt, Point2D } from 'vjcad';
const dot = new DotEnt([50, 50]);
// 简化写法(推荐)
dot.move([0, 0], [100, 100]); // 移动
dot.rotate([0, 0], Math.PI / 4); // 旋转(绕指定点)
dot.scale([0, 0], 2); // 缩放
dot.mirror([0, 0], [100, 0]); // 镜像示例
绘制点阵列
import { Engine, DotEnt, Point2D } from 'vjcad';
function drawPointGrid(
startX: number, startY: number,
rows: number, cols: number,
spacing: number
) {
const dots: DotEnt[] = [];
for (let i = 0; i < rows; i++) {
for (let j = 0; j < cols; j++) {
const dot = new DotEnt(
new Point2D(startX + j * spacing, startY + i * spacing)
);
dot.setDefaults();
dots.push(dot);
}
}
Engine.addEntities(dots);
}
// 绘制 5x5 的点阵列
drawPointGrid(0, 0, 5, 5, 20);