GoJS 中的自定义几何图形可以填充颜色吗?
Can a custom geometry in GoJS be color filled?
我正在尝试在 GoJS 中绘制一个半椭圆对象,据说可以通过 JSON 数据填充指定的颜色。椭圆的几何字符串是由另一个 javascript 方法生成的,并且工作正常,并且确实将正确的对象输出到 GoJS 图表中。我确实为该对象定义了一个模板映射,如下所示:
function ArchNodeTemplate(){
return $(go.Node,
{
locationSpot: go.Spot.TopLeft,
locationObjectName: "SHAPE",
resizable: false,
},
new go.Binding("location", "loc", go.Point.parse).makeTwoWay(go.Point.stringify),
new go.Binding("movable", "readOnly"),
new go.Binding("reshapable", "readOnly"),
new go.Binding("resizable", "readOnly"),
new go.Binding("rotatable", "readOnly"),
new go.Binding("groupable", "readOnly"),
new go.Binding("deletable", "readOnly"),
new go.Binding("copyable", "readOnly"),
$(go.Shape,
{ stroke: "#ababab",
name: "SHAPE",
strokeWidth: 2,
strokeDashArray: [5,2],
},
new go.Binding("geometryString", "geo"),
new go.Binding("fill", "color")),
);
}
从单独的方法生成的地理字符串是这样的:
m 0 0 a 30 100 0 0 1 0 200 l 0 -200 z
这是创建的对象,也是我要填充颜色的对象。
现在我确实尝试用图表中的其他对象进行试验,它们工作得很好,除了这个生成的形状。我还检查了 GoJS 网站(及其可下载库)中的示例代码,并查看了与此类似的代码(特别是平面规划器示例),一切似乎都是一样的。我在这里遗漏了什么吗?
是的,您缺少在路径几何字符串前加上 "F1 ",您也可以通过调用 https://gojs.net/latest/api/symbols/Geometry.html#static-fillPath.
以编程方式完成此操作
我正在尝试在 GoJS 中绘制一个半椭圆对象,据说可以通过 JSON 数据填充指定的颜色。椭圆的几何字符串是由另一个 javascript 方法生成的,并且工作正常,并且确实将正确的对象输出到 GoJS 图表中。我确实为该对象定义了一个模板映射,如下所示:
function ArchNodeTemplate(){
return $(go.Node,
{
locationSpot: go.Spot.TopLeft,
locationObjectName: "SHAPE",
resizable: false,
},
new go.Binding("location", "loc", go.Point.parse).makeTwoWay(go.Point.stringify),
new go.Binding("movable", "readOnly"),
new go.Binding("reshapable", "readOnly"),
new go.Binding("resizable", "readOnly"),
new go.Binding("rotatable", "readOnly"),
new go.Binding("groupable", "readOnly"),
new go.Binding("deletable", "readOnly"),
new go.Binding("copyable", "readOnly"),
$(go.Shape,
{ stroke: "#ababab",
name: "SHAPE",
strokeWidth: 2,
strokeDashArray: [5,2],
},
new go.Binding("geometryString", "geo"),
new go.Binding("fill", "color")),
);
}
从单独的方法生成的地理字符串是这样的:
m 0 0 a 30 100 0 0 1 0 200 l 0 -200 z
这是创建的对象,也是我要填充颜色的对象。
现在我确实尝试用图表中的其他对象进行试验,它们工作得很好,除了这个生成的形状。我还检查了 GoJS 网站(及其可下载库)中的示例代码,并查看了与此类似的代码(特别是平面规划器示例),一切似乎都是一样的。我在这里遗漏了什么吗?
是的,您缺少在路径几何字符串前加上 "F1 ",您也可以通过调用 https://gojs.net/latest/api/symbols/Geometry.html#static-fillPath.
以编程方式完成此操作