Вопрос в следующем: можно ли В ПРИНЦИПЕ рисовать с пом. JS линии также, как в AutoCAD -
то есть: кликается мышкой в некой рабочей области (получается начальная точка), а затем до следующего клика за курсором тянется линия (от начальной точки и до точки положения курсора) и при последующем клике образуется линия между двумя точками - далее процесс повторяется
Всем ответившим , БОЛЬШОЕ СПАСИБО!!!!
Спустя 3 часа, 56 минут, 56 секунд (10.08.2008 - 23:27) Viking написал(а):
Цитата(leha216 @ 10.8.2008, 20:30) [snapback]45771[/snapback]
Здравствуйте!
Вопрос в следующем: можно ли В ПРИНЦИПЕ рисовать с пом. JS линии также, как в AutoCAD -
то есть: кликается мышкой в некой рабочей области (получается начальная точка), а затем до следующего клика за курсором тянется линия (от начальной точки и до точки положения курсора) и при последующем клике образуется линия между двумя точками - далее процесс повторяется
Всем ответившим , БОЛЬШОЕ СПАСИБО!!!!
Вопрос в следующем: можно ли В ПРИНЦИПЕ рисовать с пом. JS линии также, как в AutoCAD -
то есть: кликается мышкой в некой рабочей области (получается начальная точка), а затем до следующего клика за курсором тянется линия (от начальной точки и до точки положения курсора) и при последующем клике образуется линия между двумя точками - далее процесс повторяется
Всем ответившим , БОЛЬШОЕ СПАСИБО!!!!
нет
но чисто для изврата вот пример только одной такой линии (работает только в опере)
Код |
<body bgcolor=white> </body> <script> window.onclick=clc; // var ev=window.event; var old_n=0; var max_n=0; var flag="none"; var st_x,st_y; function clc() { if(flag=="none" || flag=="unset") { var ev=window.event; st_x=ev.clientX; st_y=ev.clientY; flag="set"; window.onmousemove=line; } else if(flag=="set") { window.onmousemove=""; flag="unset"; } } function line() { var ev=window.event; var new_n=Math.max(Math.abs(ev.clientX-st_x),Math.abs(ev.clientY-st_y)); if(max_n<new_n) for(var i=max_n;i<new_n;i++) { var div=document.createElement("div"); div.style.background="black"; div.style.width=1; div.style.height=1; div.setAttribute("name","div"+i); document.body.appendChild(div); div.style.position="absolute"; max_n=new_n; } for(var i=0;i<new_n;i++) { var div=document.all("div"+i); var x=st_x+(ev.clientX-st_x)*i/new_n; var y=st_y+(ev.clientY-st_y)*i/new_n; div.style.left=x; div.style.top=y; } if(old_n>new_n) for(var i=new_n;i<old_n;i++) document.all("div"+i).style.display="none"; if(old_n<new_n) for(var i=old_n;i<new_n;i++) document.all("div"+i).style.display="inline"; old_n=new_n; } </script> |
Спустя 12 минут, 52 секунды (10.08.2008 - 23:40) Viking написал(а):
хотя оказывается не все это извратом считают, вот тут даже какая-то библиотека есть
Спустя 2 дня, 18 часов, 25 минут, 56 секунд (13.08.2008 - 18:06) Viking написал(а):
хех, а понравилось мне это дело...
(только для оперы)
(только для оперы)
Код |
<body bgcolor=white> </body> <script> window.onclick=clc; var old_n=0; var max_n=0; var new_n=0; var flag="none"; var st_x,st_y; function clc() { old_n=new_n; if(flag=="none" || flag=="unset") { var ev=window.event; st_x=ev.clientX; st_y=ev.clientY; flag="set"; window.onmousemove=line; } else if(flag=="set") { window.onmousemove=""; flag="unset"; } } function line() { var ev=window.event; new_n=old_n+Math.max(Math.abs(ev.clientX-st_x),Math.abs(ev.clientY-st_y)); if(max_n<new_n) { for(var i=max_n;i<new_n;i++) { var div=document.createElement("div"); div.style.background="black"; div.style.width=1; div.style.height=1; div.setAttribute("name","div"+i); document.body.appendChild(div); div.style.position="absolute"; } max_n=new_n; } for(var i=old_n;i<new_n;i++) { var div=document.all("div"+i); var x=st_x+(ev.clientX-st_x)*(i-old_n)/(new_n-old_n); var y=st_y+(ev.clientY-st_y)*(i-old_n)/(new_n-old_n); div.style.left=x; div.style.top=y; document.all("div"+i).style.display="inline"; } if(max_n>new_n) for(var i=new_n;i<max_n;i++) document.all("div"+i).style.display="none"; } </script> |
Спустя 1 месяц, 12 дней, 23 часа, 1 минута, 3 секунды (26.09.2008 - 17:07) ticktack написал(а):
Спасибо, тоже очень понравилось!! а есть еще что нибудь подобное???=)
__________________
бильярдные столы
__________________
бильярдные столы
Спустя 13 дней, 4 часа, 31 минута, 1 секунда (9.10.2008 - 21:38) pokotogoroh написал(а):
Может у кого-то ещё есть примеры?
Поделитесь
Поделитесь