1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
| let dx, dy; let aGroup = draw.group()
touch.on('#alternator', 'touchstart', function(ev){ ev.preventDefault(); dx = dx || 0; dy = dy || 0; let offx = dx + "px"; let offy = dy + "px"; $("<img src='assets/svg/icon1.svg' class='icon-item-pic' id='alternator-copy'></img>").appendTo($("#alternator-parent")) .css('position','absolute').css('top',offx).css('left',offy) });
touch.on('#alternator', 'drag', function(ev){ let offx = dx + ev.x + "px"; let offy = dy + ev.y + "px"; this.style.webkitTransform = "translate3d(" + offx + "," + offy + ",0)"; });
touch.on('#alternator', 'dragend', function(ev){ let dtop = ev.y+$('#alternator-copy').offset().top let dleft = ev.x+$('#alternator-copy').offset().left console.log(dtop,dleft) if(dleft>=drawx && dleft<drawx+draww && dtop>drawy && dtop<drawy+drawh){ let offx = dleft-drawx; let offy = dtop-drawy; let path = draw.path(`M26.5,0.261C12.032,0.261,0.261,12.032,0.261,26.5c0,14.469,11.771,26.239,26.239,26.239 c14.469,0,26.239-11.771,26.239-26.239C52.739,12.032,40.969,0.261,26.5,0.261z M26.5,47.659c-11.667,0-21.159-9.492-21.159-21.159 S14.833,5.341,26.5,5.341S47.659,14.833,47.659,26.5S38.167,47.659,26.5,47.659z M42.958,24.523l-5.095,0.422c0.125,0.5,0.174,1.564,0.173,1.563 c0.003,0.005,0.131,0.496-0.029,2.016c-0.108,1.021-0.61,1.955-1.382,2.563c-0.865,0.684-2.064,0.945-3.463,0.766 c-2.297-0.299-3.559-1.373-4.518-6.675c-0.584-3.22-2.47-5.866-5.175-7.26c-2.564-1.322-5.522-1.379-8.113-0.156 c-4.844,2.284-5.468,7.998-5.073,11.017l4.96-0.639c-0.006-0.046-0.518-4.554,2.245-5.855c1.174-0.553,2.519-0.525,3.692,0.079 c1.332,0.686,2.235,2.002,2.544,3.706c0.923,5.105,2.627,9.941,8.793,10.743c0.528,0.068,1.029,0.1,1.508,0.1 c2.676,0,4.545-0.989,5.697-1.899c1.822-1.438,3.02-3.618,3.266-5.972C43.202,26.329,43.113,25.898,42.958,24.523z`) path.fill({ color: '#fff', opacity: 1 }) path.x(offx-10).y(offy+10) path.scale(1.3, 1.3) path.touchstart(function() { event.preventDefault() this.selectize().resize({snapToGrid:1, snapToAngle:1}) }) path.touchmove(function() { event.preventDefault() this.selectize(false) }) path.touchcancel(function() { event.preventDefault() this.selectize(false) }) let text = draw.text(`G ${a_index}`).fill({ color: '#fff', opacity: 1 }) text.x(offx).y(offy-30) this.style.webkitTransform = "translate3d(" + 0 + "," + 0 + ",0)" $("#alternator-copy").remove() let classname = `a-group${a_index}` let group = aGroup.group().addClass(classname) group.add(path) group.add(text) group.draggy() a_index ++ }else{ this.style.webkitTransform = "translate3d(" + 0 + "," + 0 + ",0)" $("#alternator-copy").remove() } })
|