ホームページ php教程 php手册 d3.js画矢量图+可拖拽的实现思路

d3.js画矢量图+可拖拽的实现思路

Jun 01, 2016 am 09:46 AM
java

d3.js可以画矢量图不难,难在如何拖拽,其实jquery甚至easyui都提供了draggable的拖放方法,只需要在拖动一个div的drop事件执行的时候重新绘制line即可,实现起来就太简单了,用来做代码生成器或报表工具或工作流简直爽哉!!! 我也可以融合到我的easydragger开源软件里,形成新的更加强大的产品,鸟无翅不可飞,车无轮不可跑,代码设计器无矢量图就是垃圾,无法导向人脑的认知系统,大家祝愿我完成吧,然后让各位早些下载下来用用。接下来我拖拽将进行。祈祷吧。世界终会安宁。

<code class="language-html">  
    
        <meta charset="utf-8">  
        <title>Arrow</title>  
   
  
<script src="d3.v3.min.js" charset="utf-8"></script>  
<script> 
  
var width  = 400;
var height = 400;
     
var svg = d3.select("body").append("svg")
        .attr("width", width)
        .attr("height", height);
         
var defs = svg.append("defs");
  
var arrowMarker = defs.append("marker")
                        .attr("id","arrow")
                        .attr("markerUnits","strokeWidth")
                        .attr("markerWidth","12")
                        .attr("markerHeight","12")
                        .attr("viewBox","0 0 12 12") 
                        .attr("refX","6")
                        .attr("refY","6")
                        .attr("orient","auto");
  
var arrow_path = "M2,2 L10,6 L2,10 L6,6 L2,2";
                         
arrowMarker.append("path")
            .attr("d",arrow_path)
            .attr("fill","#000");
  
var line = svg.append("line")
             .attr("x1",0)
             .attr("y1",0)
             .attr("x2",200)
             .attr("y2",50)
             .attr("stroke","red")
             .attr("stroke-width",2)
             .attr("marker-end","url(#arrow)");
  
var curve_path = "M20,70 T80,100 T160,80 T200,90";
  
var curve = svg.append("path")
             .attr("d",curve_path)
             .attr("fill","white")
             .attr("stroke","red")
             .attr("stroke-width",2)
             .attr("marker-start","url(#arrow)")
             .attr("marker-mid","url(#arrow)")
             .attr("marker-end","url(#arrow)");
              
  
</script>  
  
  </code>
ログイン後にコピー

 

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Javaの平方根 Javaの平方根 Aug 30, 2024 pm 04:26 PM

Javaの平方根

Javaの完全数 Javaの完全数 Aug 30, 2024 pm 04:28 PM

Javaの完全数

Java の乱数ジェネレーター Java の乱数ジェネレーター Aug 30, 2024 pm 04:27 PM

Java の乱数ジェネレーター

Javaのアームストロング数 Javaのアームストロング数 Aug 30, 2024 pm 04:26 PM

Javaのアームストロング数

ジャワのウェカ ジャワのウェカ Aug 30, 2024 pm 04:28 PM

ジャワのウェカ

Javaのスミス番号 Javaのスミス番号 Aug 30, 2024 pm 04:28 PM

Javaのスミス番号

Java Springのインタビューの質問 Java Springのインタビューの質問 Aug 30, 2024 pm 04:29 PM

Java Springのインタビューの質問

Java 8 Stream Foreachから休憩または戻ってきますか? Java 8 Stream Foreachから休憩または戻ってきますか? Feb 07, 2025 pm 12:09 PM

Java 8 Stream Foreachから休憩または戻ってきますか?

See all articles