GoJs图形绘图模板Shape示例详解

yizhihongxing

以下是关于“GoJs图形绘图模板Shape示例详解”的攻略。

什么是GoJs图形绘图模板Shape

GoJs图形绘图模板Shape是一个JavaScript图形库,它可以用于创建各种可交互的图形,包括流程图、组织结构图、网络拓扑图等。

Shape模板示例1

下面我们来看一个GoJs Shape模板的示例,该示例用于创建带有箭头的线条。首先,我们需要定义一个Shape模板:

$(go.Shape,
  {
    name: "ARROW",
    fill: null,
    desiredSize: new go.Size(8, 8),
    stroke: "black",
    strokeWidth: 1.5,
    strokeJoin: "miter",
    strokeCap: "butt"
  },
  new go.Binding("angle").makeTwoWay(function(a) { return a - 90; }),
  new go.Binding("geometry", "", function(shape) {
    if (shape === "arrowUp") return ARROW_UP;
    if (shape === "arrowDown") return ARROW_DOWN;
    if (shape === "arrowLeft") return ARROW_LEFT;
    return ARROW_RIGHT;
  }),

上述代码中定义的Shape模板是一个带有箭头的线条,我们可以通过不同的shape参数来修改箭头的方向。例如,shape为"arrowUp"时箭头方向为向上。

在绘图过程中,我们可以使用go.Diagram对象创建图形元素并添加Shape模板:

myDiagram.add(
  $(go.Link,
    { routing: go.Link.Normal, curve: go.Link.Bezier },
    $(go.Shape,  // 线条部分
      { strokeWidth: 2 },
      new go.Binding("stroke", "color")),
    $(go.Shape,  //箭头部分
      { fill: "black", stroke: null, scaling: { scale: 3 } },
      new go.Binding("fromArrow", "fromArrow"),
      new go.Binding("toArrow", "toArrow")),
    $(go.TextBlock,  // 文字部分
      { margin: 8, editable: true },
      new go.Binding("text").makeTwoWay())
  )
);

上述代码中的图形元素是一个连线,包含用于绘制线条、箭头和文字的Shape模板。

Shape模板示例2

下面我们再来看一个GoJs Shape模板的示例,该示例用于创建带有不同颜色的方形。

$(go.Shape,
  {
    name: "SHAPE",
    stroke: "black",
    strokeWidth: 1.5
  },
  new go.Binding("fill", "", function(shape) {
    if (shape === "red") return "red";
    if (shape === "green") return "green";
    if (shape === "blue") return "blue";
    if (shape === "yellow") return "yellow";
  }),

上述代码中定义的Shape模板是一个方形,我们可以通过不同的shape参数来修改方形的颜色。例如,shape为"red"时方形颜色为红色。

在绘图过程中,我们可以使用go.Diagram对象创建图形元素并添加Shape模板:

myDiagram.add(
  $(go.Node,
    "Auto",
    $(go.Shape,  // 方形部分
      {
        fill: "white",
        stroke: "black",
        strokeWidth: 2,
        width: 70,
        height: 70
      },
      new go.Binding("fill", "color", function(color) { return color; })),
    $(go.TextBlock,  // 文字部分
      { margin: 8, editable: true },
      new go.Binding("text").makeTwoWay())
  )
);

上述代码中的图形元素是一个节点,包含用于绘制方形和文字的Shape模板。

总结

GoJs图形绘图模板Shape提供了多种可定制的图形,可以帮助我们快速创建各种可交互的图形。通过上述示例,我们可以了解如何定义和使用Shape模板,希望能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:GoJs图形绘图模板Shape示例详解 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • dw cs6中div标签宽度和高度怎么设置?

    关于在DW CS6中设置div标签的宽度和高度,可以通过直接设置CSS样式或者使用CSS类来实现。 直接设置CSS样式 选中div标签,单击右侧 CSS 样式窗口中的“阴影”图标(或者选择“样式”菜单 ->“更多样式”)打开 CSS 样式编辑器。 在“盒模型”选项卡中,可以设置元素的宽度和高度,包括设置边框、内边距和外边距等属性。 还可以在“定位”选项…

    css 2023年6月10日
    00
  • css基于媒体查询和 rem 的响应式布局实践

    下面为你详细讲解“CSS基于媒体查询和rem的响应式布局实践”的完整攻略。 一、什么是媒体查询 媒体查询是CSS3比较常用的一个新特性,它可以让CSS样式对不同的设备进行特定的适配。 媒体查询可以根据设备的参数来匹配不同的CSS样式,常见的参数包括屏幕大小、分辨率、设备方向等,例如下面的代码就是一个CSS的媒体查询: @media screen and (m…

    css 2023年6月9日
    00
  • css背景色透明 内容不透明的解决方法(兼容所有浏览器)

    为了实现 CSS 背景色透明,内容不透明的效果,可以使用以下两种方法: 方法一:使用 RGBA 颜色 注:RGBA 颜色值包含了一个额外的 alpha 值,该值可以用来实现透明度,需要注意的是,alpha 值为 0 时表示完全透明,为 1 时表示完全不透明。 示例代码: .transparent-bg { background-color: rgba(255…

    css 2023年6月9日
    00
  • html知识点实践经验总结

    HTML知识点实践经验总结 简介 HTML(英文全名:Hyper Text Markup Language),意为超文本标记语言,是用于创建 Web 页面的编程语言。 在本文中,我将分享我对 HTML 知识点的实践经验,帮助初学者更好地理解 HTML,从而更好地掌握 Web 开发。 基础知识 标签 HTML 中的每个元素都是由标签定义的。标签可用于设置元素的…

    css 2023年6月10日
    00
  • CSS 实现元素较宽不能被完全展示时将其隐藏的方法

    实现元素较宽不能被完全展示时将其隐藏的方法有很多种,其中被广泛应用的方式是利用 CSS 的 overflow 属性。 具体的实现方法如下: 使用 overflow 属性。 在 CSS 中,可以通过设置元素的 overflow 属性来实现元素较宽不能被完全展示时将其隐藏的功能。在 overflow 中,常用的取值有 hidden、scroll、auto 等。其…

    css 2023年6月10日
    00
  • css实现两栏固定中间自适应的方法

    要实现两栏固定中间自适应,需要使用css的布局技巧。下面是具体的步骤: 步骤一:HTML结构 首先,在HTML中需要创建以下基本结构: <div class="wrapper"> <div class="left">Left Column</div> <div class=&q…

    css 2023年6月9日
    00
  • HTML5边玩边学(2)基础绘图实现方法

    HTML5是一种新的标记语言,它允许用户通过绘图和动画等功能来丰富网页的内容。本文将详细介绍HTML5绘图的基础实现方法和示例操作。 HTML5基础绘图实现方法 HTML5使用Canvas元素来完成基础的绘图操作。Canvas是一个HTML5标签,用于在网页上绘制图像。使用Canvas元素要按照以下步骤: 步骤一:添加canvas元素到网页 在HTML中添加…

    css 2023年6月10日
    00
  • 利用CSS定位背景图片的常用方法总结

    关于“利用CSS定位背景图片的常用方法总结”的攻略,我详细讲解如下: 1. 使用background-position属性定位背景图片 background-position属性用于控制背景图片的位置,其中包含两个值,一个是水平方向的位置(left、center、right),另一个是垂直方向的位置(top、center、bottom)。 语法: backg…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部