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.

以编程方式完成此操作