构造函数
支持简化的数组写法 [x, y]。
椭圆中心点,支持 Point2D 或数组 [x, y]
长半径
短半径
长轴角度
颜色索引,默认为256
实体类型标识符(如"LINE"、"CIRCLE"等)
DWG对象ID(句柄)- 从DWG文件导入时的唯一标识符 这个值不应该在克隆时复制,新创建的实体应该为空字符串
实体索引ID - 从1开始递增的唯一索引 用于在WebCAD格式中标识实体
是否处于脏状态,供渲染器增量更新
Optionalblock获取起始角度
标准化的起始角度(弧度)
设置起始角度
新的起始角度(弧度)
获取结束角度
标准化的结束角度(弧度)
设置结束角度
新的结束角度(弧度)
获取椭圆弧的内角
计算从起始角度到结束角度的角度范围。
内角值(弧度)
检查是否为完整椭圆
判断椭圆是否为完整的椭圆(360度)而不是椭圆弧。
如果是完整椭圆返回true
检查是否为椭圆弧
判断椭圆是否为椭圆弧(不完整的椭圆)。
如果是椭圆弧返回true
获取半径比例
计算短半径与长半径的比例。
半径比例值(0-1之间)
获取椭圆周长
计算椭圆的周长,这里使用长半径的近似计算。
椭圆周长
获取颜色索引
颜色索引值(256表示"随图层"颜色)
设置颜色索引
颜色索引值(256表示"随图层"颜色)
获取图层ID
图层ID字符串
设置图层ID
图层ID字符串
获取线型比例
线型比例因子
设置线型比例
线型比例因子
获取线宽
线宽值(-1=ByLayer, -2=ByBlock, >=0为具体值,单位为0.01mm)
设置线宽
线宽值(-1=ByLayer, -2=ByBlock, >=0为具体值)
获取实体存活状态
是否存活(true表示有效,false表示已删除)
设置实体存活状态
是否存活
DXF Group Code 60 entity visibility. true = visible (default), false = invisible.
获取原始扩展数据(用于序列化) 格式: { "1001": "AppName", "1000": "JSON字符串" }
原始xdata对象或undefined
设置原始扩展数据(从数据库加载时使用)
原始xdata对象
获取扩展数据的应用程序名(AppName)
AppName字符串,或undefined
获取所属文档
通过实体所在的块来获取文档对象。在CAD系统中, 实体总是属于某个块,而块又属于某个文档。
文档对象,如果无法获取则返回undefined
获取图层名称
根据实体的layerId从文档的图层集合中查找对应的图层名称。 如果找不到对应的图层,则返回默认图层"0"。
图层名称,默认为"0"
设置图层名称
根据图层名称查找对应的图层ID并设置给实体。 如果找不到指定的图层,则使用默认图层ID("0")。
注意:优先使用实体所属文档的图层列表,如果实体尚未添加到文档, 则使用 Engine.currentDoc 的图层列表。
图层名称
获取线型
返回实体当前的线型设置。线型控制线条的显示样式 (如实线、虚线、点划线等)。
线型名称
设置线型
设置实体的线型,支持标准CAD线型、常见别名和自定义线型。 输入的线型名称会被转换为大写进行匹配。
支持的线型:
线型名称
旋转椭圆角度
同时旋转起始角度和结束角度。
旋转角度(弧度)
重置椭圆角度
将起始角度和结束角度都重置为0,使椭圆变为完整椭圆。
检查所有关键点是否在指定框内
对于椭圆,只需检查中心点是否在指定的边界框内。 这是一个简化的可见性检测方法。
边界框对象
如果中心点在框内返回true
初始化椭圆参数
使用给定的中心点、长半径和颜色初始化椭圆。
中心点坐标
长半径值
颜色索引
镜像变换
对椭圆进行镜像变换,以指定的两点为镜像轴。 镜像操作会改变中心点位置、长轴角度和起始/结束角度。
镜像轴起点
镜像轴终点
移动变换
将椭圆从一个位置移动到另一个位置。 只改变中心点位置,不影响半径和角度。
起始位置
目标位置
旋转变换
围绕指定点旋转椭圆。同时旋转中心点和长轴角度。
旋转中心点
旋转角度(弧度)
缩放变换
以指定点为中心对椭圆进行缩放。 缩放会同时影响中心点位置和长短半径大小。
缩放中心点
缩放因子
拉伸变形操作
根据拉伸框和移动向量对椭圆进行拉伸。 如果中心点在拉伸框内,则移动整个椭圆。
拉伸起始点
拉伸目标点
拉伸框对象
夹点编辑操作
根据夹点类型和新位置更新椭圆的几何参数。 支持两种夹点类型:中心点和象限点。
新的夹点位置
夹点类型("center"=中心点,"quad"=象限点)
获取OpenGL渲染点集
生成椭圆或椭圆弧的离散点集,用于OpenGL或WebGL渲染。 算法分为两种情况:
渲染点集数组
获取椭圆边界框
根据指定的坐标系计算椭圆的边界框。 通过获取椭圆的所有渲染点来计算精确的边界框。
坐标系类型("Wcs"、"Ucs"、"Dcs")
边界框对象
计算边界框
根据指定的坐标系计算椭圆的最小边界矩形。 这是标准的边界框计算方法,与getBounds方法功能相同。
坐标系类型(M.WCS、M.UCS、M.DCS)
边界框对象
从数据库格式恢复
从数据库格式的对象恢复椭圆的所有参数。
数据库格式的椭圆数据
清除扩展数据
检查是否有扩展数据
是否存在扩展数据
从默认属性对象复制属性
将指定的默认属性对象的所有相关属性复制到当前实体。 这通常用于创建新实体时应用默认设置。
默认属性对象,包含layer、colorIndex、lineType等属性
当前实例(支持链式调用)
显式标记本实体克隆自哪个图纸中的哪个实体
generateCloneObjectId 依赖 Engine.currentDoc.serverSource,编程式成图时
当前文档往往不是克隆来源,需要用这个方法直接指定。
导出 DWG 时后端据此从源图做 ODA 克隆,只把发生变化的属性覆盖上去, 未改动的字体、线型和填充图案保持源实体原样。
源实体在 DWG 中的 handle
Optionalmapid: string源图 mapid;省略表示克隆自当前文档的 templateFrom 模板
源图版本,默认 "v1"
设置为系统默认值
从全局CAD系统设置中获取当前的默认属性值并应用到实体。 这些默认值包括当前图层、当前颜色、当前线型等。
使用的全局变量:
从数据库默认属性对象设置属性
从数据库查询结果或序列化数据中恢复实体属性。 这个方法处理数据库中可能存在的空值和默认值情况。
数据库属性对象,包含layerId、colorIndex等属性
当前实例(支持链式调用)
将属性映射到数据库默认属性对象
将当前实体的属性映射到数据库存储格式的对象中。 用于保存实体数据到数据库或序列化。
目标数据库属性对象
映射后的属性对象
通知渲染系统此实体已被修改。
在桶渲染模式下,这将标记对应的桶为"脏",以便在下次 regenPartial 时重绘。
注意:此方法只标记,不触发重绘。调用方需要在适当的时候(如命令结束时)调用 regenPartial()。
释放实体占用的外部资源 子类如持有 PIXI 对象或大尺寸缓冲,应覆盖此方法清理
椭圆类 表示CAD中的椭圆实体,继承自实体基类 包含中心点、长短半径、角度等属性
Example