blockRendering.Drawer 类
一个根据给定渲染信息绘制块的对象。
Signature:
export declare class Drawer
构造函数
| 构造函数 | 修饰符 | 说明 |
|---|---|---|
| (构造函数)(block, info) | 构造 Drawer 类的新实例 |
属性
| 属性 | 修饰符 | 类型 | 说明 |
|---|---|---|---|
| block_ | BlockSvg | ||
| constants_ | protected |
ConstantProvider | |
| info_ | RenderInfo | ||
| inlinePath_ | 字符串 | ||
| outlinePath_ | 字符串 | ||
| topLeft_ | 坐标 |
方法
| 方法 | 修饰符 | 说明 |
|---|---|---|
| draw() | 将砌块绘制到工作区。这里是“绘图”表示设置 SVG 路径元素并在屏幕上移动字段、图标和连接。 路径片段被推送到“steps”数组中,这些“路段”数组随后与空格连接,并直接在块上设置。这可保证这些步骤用空格分隔以提高可读性,但这并不是强制性要求。 |
|
| drawBottom_() | protected |
为砌块的底部边缘添加台阶,可能包括用于下一个连接的凹口。 |
| drawConnectionHighlightPath(measurable) | 返回路径以突出显示指定连接。 | |
| drawInlineInput_(input) | protected |
为内嵌输入添加步骤。 |
| drawInternals_() | protected |
绘制块的内部:内嵌输入、字段和图标。这些代码并不依赖于外部的放置路径。 |
| drawJaggedEdge_(row) | protected |
为收起的块上行锯齿状的边添加阶梯。 |
| drawLeft_() | protected |
为代码块左侧添加步骤,其中可能包括输出连接 |
| drawOutline_() | protected |
创建砌块的轮廓。这是一条连续的路径。 |
| drawRightSideRow_(row) | protected |
为没有值或语句输入连接的行的右侧添加步骤。 |
| drawStatementInput_(row) | protected |
为语句输入添加步骤。 |
| drawTop_() | protected |
为砌块的顶角添加台阶,将帽子和圆角等细节考虑在内。 |
| drawValueInput_(row) | protected |
为外部值输入添加步骤,呈现为块侧面的一个凹口。 |
| layoutField_(fieldInfo) | protected |
将字段或图标的新位置推送到其 SVG 根节点。 |
| positionExternalValueConnection_(row) | protected |
将连接放置在外部值输入上,同时考虑 RTL,以及父块和子块之间的小间隙(允许父块的深色路径显示出来)。 |
| positionInlineInputConnection_(input) | protected |
将连接放在内嵌值输入上,同时考虑 RTL 以及父块和子块之间的小间隙,以便让父块的暗路径显示出来。 |
| positionNextConnection_() | protected |
在块上放置下一个连接。 |
| positionOutputConnection_() | protected |
在块上定位输出连接。 |
| positionPreviousConnection_() | protected |
将上一个连接放置在一个块上。 |
| positionStatementInputConnection_(row) | protected |
在语句输入上定位连接,同时考虑 RTL 以及父块和子块之间的小间隔,以便让父块的暗路径显示出来。 |
| recordSizeOnBlock_() | protected |
将大小信息重新保存到块中。大多数渲染信息在渲染结束时可能会被丢弃。任何需要保留的内容都应在此函数中设置。 |
| updateConnectionHighlights() | protected |
更新路径对象,以反映块上的哪些连接突出显示。 |