123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- // wrapped by build app
- define("dojox/drawing/plugins/tools/Iconize", ["dijit","dojo","dojox","dojo/require!dojox/drawing/plugins/_Plugin"], function(dijit,dojo,dojox){
- dojo.provide("dojox.drawing.plugins.tools.Iconize");
- dojo.require("dojox.drawing.plugins._Plugin");
- dojox.drawing.plugins.tools.Iconize = dojox.drawing.util.oo.declare(
- // summary:
- // Somewhat of internal use...
- // Outputs a path to be used as an icon. Will end up being a
- // sub-icon under Export options
-
- dojox.drawing.plugins._Plugin,
- function(options){
-
- },
- {
- onClick: function(){
- var item;
- for(var nm in this.stencils.stencils){
- console.log(" stanceil item:", this.stencils.stencils[nm].id, this.stencils.stencils[nm])
- if(this.stencils.stencils[nm].shortType=="path"){
- item = this.stencils.stencils[nm];
- break;
- }
- }
- if(item){
- console.log("click Iconize plugin", item.points);
- this.makeIcon(item.points);
- }
- },
- makeIcon: function(/*Array*/p){
- var rnd = function(n){
- return Number(n.toFixed(1));
- }
-
- var x = 10000;
- var y = 10000;
- p.forEach(function(pt){
- if(pt.x!==undefined && !isNaN(pt.x)){
- x = Math.min(x, pt.x);
- y = Math.min(y, pt.y);
- }
- });
-
- var xmax = 0;
- var ymax = 0;
- p.forEach(function(pt){
- if(pt.x!==undefined && !isNaN(pt.x)){
- pt.x = rnd(pt.x - x);
- //console.log("Y:", pt.y, y, pt.y - y)
- pt.y = rnd(pt.y - y);
- xmax = Math.max(xmax, pt.x);
- ymax = Math.max(ymax, pt.y);
- }
- });
-
- console.log("xmax:", xmax, "ymax:", ymax)
-
- var s = 60
- var m = 20
-
- p.forEach(function(pt){
- pt.x = rnd(pt.x / xmax) * s + m;
- pt.y = rnd(pt.y / ymax) * s + m;
- });
-
- var txt = "[\n";
- dojo.forEach(p, function(pt, i){
- txt += "{\t"
- if(pt.t){
- txt += "t:'"+pt.t+"'"
- }
- if(pt.x!==undefined && !isNaN(pt.x)){
- if(pt.t){
- txt += ", ";
- }
- txt += "x:"+pt.x+",\t\ty:"+pt.y;
- }
- txt += "\t}";
- if(i!=p.length-1){
- txt += ","
- }
- txt += "\n"
- });
- txt+="]"
-
- console.log(txt)
- var n = dojo.byId("data");
- if(n){
- n.value = txt;
- }
- }
- }
- );
- dojox.drawing.plugins.tools.Iconize.setup = {
- name:"dojox.drawing.plugins.tools.Iconize",
- tooltip:"Iconize Tool",
- iconClass:"iconPan"
- };
- dojox.drawing.register(dojox.drawing.plugins.tools.Iconize.setup, "plugin");
- });
|