慕勒3428872
2023-05-11 16:14:57
我正在嘗試使用 GoJS 庫繪制嵌套形狀?,F(xiàn)在我有一個(gè)矩形,里面只有一條線。Whole Object 是一個(gè)具有兩種形狀的面板,一個(gè)矩形和一條負(fù)線。此時(shí)就可以了,MinusLine 渲染在矩形的中心。我想要實(shí)現(xiàn)的是根據(jù)我得到的某些條件從上到下定位/更改 MinusLine 的位置等,但是我不能以任何方式移動(dòng)它。例如,將完全居中的黃色線移動(dòng)到紅色或棕色的位置代碼看起來像:GO(go.Node, "Table", { layerName: "AfterForeground", movable: false, locationObjectName: "BODY", locationSpot: go.Spot.parse("0.5 0 0 0 "), selectionObjectName: "MAIN_SHAPE", selectionObjectName: "MAIN_SHAPE", }, new go.Binding("location", "loc", go.Point.parse).makeTwoWay(go.Point.stringify), GO(go.Panel,go.Panel.Position, "Auto", { row: 1, column: 1, name: "BODY", stretch: go.GraphObject.Fill }, GO(go.Shape, "Rectangle", { fill: wellColor, name: "MAIN_SHAPE", stroke: myColor, strokeWidth: 0.4, }, new go.Binding("fill", "wellColor"), ) , new go.Binding("desiredSize", "size", go.Size.parse).makeTwoWay(go.Size.stringify) ,GO(go.Shape, "MinusLine", {}), // <-- Move this YELLOW line vertically somehere inside Rectangle )
1 回答

一只名叫tom的貓
TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超3個(gè)贊
表格面板(對(duì)于節(jié)點(diǎn)的面板類型)真的是您想要的嗎?
到目前為止,您有一個(gè)只有一個(gè)單元格的表格面板,默認(rèn)情況下,單元格中的所有對(duì)象都將位于中心。alignment
您可以通過將屬性添加到元素來輕松移動(dòng)它們。
這是您的表格的示例,兩個(gè)子面板添加到節(jié)點(diǎn),一個(gè)與頂部對(duì)齊,一個(gè)與中心對(duì)齊,y 偏移量為 30:https://codepen.io/simonsarris/pen/zYBrLaX?editors?= 1011
請注意,由于您已經(jīng)定義了模板,Shape 占據(jù)了表格的整個(gè)空間,形狀的中心有一條減號(hào)線。這可能不是您想要的。我在 Shape 上設(shè)置了寬度和高度,在桌子上設(shè)置了(更大的)高度以使演示更清晰。
添加回答
舉報(bào)
0/150
提交
取消