> **本文回答**：vjcad 已确认的实体类与对应 `type` 字符串如下表；同一概念在不同来源里可能有不同命名（例如 `ImageEnt` vs `ImageRefEnt`），实战时按你 IDE 能解析到的为准，并参考对应示例。

## 一、`type` ↔ 类名（来自 `vjcad/doc/command/api-reference.md`）

| `type` | 类 |
|---|---|
| `LINE` | `LineEnt` |
| `CIRCLE` | `CircleEnt` |
| `ARC` | `ArcEnt` |
| `PLINE` | `PolylineEnt` |
| `TEXT` | `TextEnt` |
| `MTEXT` | `MTextEnt` |
| `INSERT` | `InsertEnt` |
| `ELLIPSE` | `EllipseEnt` |
| `SPLINE` | `SplineEnt` |
| `HATCH` | `HatchEnt` |
| `IMAGEREF` | `ImageRefEnt`（运行时 `type` 实际为 `IMAGEREF`；API 参考表写作 `ImageEnt`/`IMAGE`，但 vjcad@1.0.16 导出名是 `ImageRefEnt`） |
| `DOT` | `DotEnt` |
| `RAY` | `RayEnt` |
| `XLINE` | `XLineEnt` |
| `SOLID` | `SolidEnt` |

## 二、扩展类（来自示例 / 架构图）

| 类 | 说明 | 来源 |
|---|---|---|
| `LinearDimensionEnt` / `AlignedDimensionEnt` / `RadialDimensionEnt` / `DiametricDimensionEnt` / `AngleDimensionEnt` / `ArcDimensionEnt` / `OrdinateDimensionEnt` | 各类标注 | `vjcad/example/entity/all/01entities.js`、`vjcad/example/entity/dimension/01linear.js` ~ `08ordinate.js` |
| `MLeaderEnt` | 多重引线 | `vjcad/example/entity/all/01entities.js`、`vjcad/example/entity/mleader/01create.js` |
| `PixelPointEnt` | 像素级点 | `vjcad/example/entity/all/01entities.js`、`vjcad/example/entity/pixelpoint/01create.js` |
| `MeshEnt` | 三维网格 | `vjcad/example/entity/mesh/01create.js`、`vjcad/doc/entity/mesh-ent.md` |
| `ImageRefEnt`（与 `ImageEnt` 同概念，命名见来源） | 图像引用 | `vjcad/example/entity/all/01entities.js`、`vjcad/doc/guide/architecture.md`（架构图） |
| `ImageSource` | 图像源（与 `ImageRefEnt` 配套） | `vjcad/example/entity/all/01entities.js` |
| `CustomEntityBase` | 自定义实体基类 | `vjcad/doc/entity/custom-entities.md`、`vjcad/doc/guide/architecture.md` |

> **命名差异**：包只导出 **`ImageRefEnt`**，`ImageEnt` 是 `undefined`——写代码必须用 `ImageRefEnt + ImageSource`（示例方式），API 参考表里的 `ImageEnt` 是旧名/别名文档残留。

## 三、辅助类型 / 工具

| 类 / 枚举 | 用途 | 来源 |
|---|---|---|
| `Point2D` | 二维点 | `vjcad/doc/command/api-reference.md` |
| `BulgePoint`, `BulgePoints` | 多段线点（带凸度） | `vjcad/doc/guide/quick-start.md` |
| `Edge`, `Edges`, `EdgeType` | 填充边界 | `vjcad/example/entity/all/01entities.js` |
| `MLeaderContentType` | 多重引线内容类型枚举 | `vjcad/example/entity/all/01entities.js` |
| `TextStyle` | 文字样式 | `vjcad/example/entity/text/04fonts.js` |
| `LinetypeDefinition` | 线型定义（自定义虚线 / 复杂线型） | `vjcad/doc/entity/index.md`（linetype 示例列表） |

## 四、`EntityBase` 通用方法

```js
ent.setDefaults();
ent.clone();
ent.move(from, to);
ent.rotate(center, angle);
ent.scale(center, factor);
ent.mirror(pt1, pt2);
ent.boundingBox();
ent.toDb();    // 序列化
ent.fromDb(data);
ent.fromDefaultProps(otherEnt);
```

MCP 参考：`vjcad/doc/command/api-reference.md`、`vjcad/doc/guide/architecture.md`。

## 参考（官方文档 MCP）

- 文档：`vjcad/doc/entity/index.md`、`vjcad/doc/command/api-reference.md`、`vjcad/doc/guide/architecture.md`
- 示例：`vjcad/example/entity/all/01entities.js`
