以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 SVG/GML/VRML/X3D/XAML 』  (http://bbs.xml.org.cn/list.asp?boardid=21)
----  基于SVG的在线画图  (http://bbs.xml.org.cn/dispbbs.asp?boardid=21&rootid=&id=38214)


--  作者:wanlh
--  发布时间:9/22/2006 9:38:00 PM

--  基于SVG的在线画图
本人写了一个基于SVG的在线画图程序,支持简单的的动画,函数画图及简单的滤镜!
欢迎大家试用与交流!

[URL=http://210.39.15.106/phys/webdraw/webbrush.jsp]http://210.39.15.106/phys/webdraw/webbrush.jsp[/URL]


[此贴子已经被作者于2006-9-22 22:36:22编辑过]

--  作者:bluehxjing
--  发布时间:9/24/2006 10:11:00 PM

--  
你好,我想请教一下你是如何保存绘好的图形,谢谢!
--  作者:wanlh
--  发布时间:9/24/2006 10:41:00 PM

--  
用Javascript分析与SVG对应的XML,然后写入文件。
--  作者:lgsh2008
--  发布时间:9/25/2006 9:14:00 AM

--  
给出操作说明~~~~~~~
--  作者:daidaixiong
--  发布时间:9/25/2006 9:21:00 AM

--  
请教楼主,对于撤销和重做是如何的实现的啊?
--  作者:wwwtiger
--  发布时间:9/25/2006 11:21:00 AM

--  
不错不错,能有使用说明就更好了,画多边形的时候不知道怎么终止,还有输入完文本后,怎么回到画布上?
--  作者:wanlh
--  发布时间:9/25/2006 12:58:00 PM

--  
你把光标停在按钮处,会有一个简单的操作提示.画多变形按空格结束.输入文字后,可以点击其他按钮继续画图或选定操作.上面的工具栏中有帮助的链接,里面也有简单的说明,更多说明有待进一步增加.
--  作者:daidaixiong
--  发布时间:9/25/2006 1:08:00 PM

--  
对于撤销功能,是不是要维护一个数组,将状态信息放到数组里,以便后续操作,还是有其他的方法?
--  作者:wanlh
--  发布时间:9/25/2006 1:22:00 PM

--  
撤销功能的实现原理上是当用户进行了改变画面的操作时,将画面信息存放在堆栈中,当用户点击撤销时,则取出堆栈中的数据重新绘制画布!
--  作者:wanlh
--  发布时间:9/28/2006 8:59:00 PM

--  
新增了画正多边形和星形的功能。"自选图形"菜单使用了开源的DHTML Menu,欢迎测试,并提宝贵意见!
--  作者:wanlh
--  发布时间:10/14/2006 7:59:00 AM

--  
修正了调整大小和旋转的一个Bug:
原先调整选中元素的大小或旋转选中的图形时,当鼠标移动到另外一个图形上时,图形的位置和大小及旋转的中心会受影响。
--  作者:ncepuyuyu
--  发布时间:10/20/2006 10:08:00 AM

--  
非常棒
--  作者:ncepuyuyu
--  发布时间:10/20/2006 10:09:00 AM

--  
建议管理员加精和奖励
--  作者:wanlh
--  发布时间:10/21/2006 8:45:00 AM

--  
谢谢ncepuyuyu的鼓励!

改写了画贝塞尔(bezier)曲线的函数:
1.将二次贝塞尔曲线改为三次贝塞尔曲线。
2.支持连续画贝塞尔曲线,按空格结束,按Shift+空格曲线自封闭。
3.修正了计算贝塞尔曲线范围的方法。

从网上找到的一段非常简捷的计算贝塞尔曲线函数点的代码:
//====================================\
// 13thParallel.org Beziér Curve Code \//   by Dan Pupius (www.pupius.net)  \
//====================================\
coord = function (x,y) {
  if(!x) var x=0;
  if(!y) var y=0;
  return {x: x, y: y};
}

function B1(t) { return t*t*t }
function B2(t) { return 3*t*t*(1-t) }
function B3(t) { return 3*t*(1-t)*(1-t) }
function B4(t) { return (1-t)*(1-t)*(1-t) }

function getBezier(percent,C1,C2,C3,C4) {
  var pos = new coord();
  pos.x = C1.x*B1(percent) + C2.x*B2(percent) + C3.x*B3(percent) + C4.x*B4(percent);
  pos.y = C1.y*B1(percent) + C2.y*B2(percent) + C3.y*B3(percent) + C4.y*B4(percent);
  return pos;
}


--  作者:ncepuyuyu
--  发布时间:10/21/2006 3:04:00 PM

--  
该叫你一声wanlh大哥了
我把你的代码打印出来了,足足有60多页,对我启发很大。
我只是学习用,不偷用你的代码的。:)
有很多地方看不懂,你那有又好又简洁的例子给我学习学习么,关于鼠标交互和xml分析保存和svg装载方面的。
再次感谢你。
sunjiandi1@163.com
--  作者:wanlh
--  发布时间:10/21/2006 5:40:00 PM

--  
以下是引用ncepuyuyu在2006-10-21 15:04:00的发言:
该叫你一声wanlh大哥了
我把你的代码打印出来了,足足有60多页,对我启发很大。
我只是学习用,不偷用你的代码的。:)
有很多地方看不懂,你那有又好又简洁的例子给我学习学习么,关于鼠标交互和xml分析保存和svg装载方面的。
再次感谢你。
sunjiandi1@163.com


呵呵,我没有加密的目的就是让大家研究和学习。否则,你就没有这么容易得到能够看得懂的源代码了。

关于学习资料,我大部分都是参考SVG的官方网站:[URL=http://www.w3.org/TR/SVG/]http://www.w3.org/TR/SVG/[/URL]。我手头也没有更好的资料。其实书店应该有挺多关于用Javascript分析和操作XML DOM的书.


--  作者:lcyi
--  发布时间:11/10/2006 11:01:00 AM

--  
现在也在学习Svg,给我发一份吧,谢谢。
lcyi_176@163.com
--  作者:huqing80102
--  发布时间:11/12/2006 9:36:00 AM

--  
真是高手呀
--  作者:密码锁
--  发布时间:11/12/2006 9:53:00 AM

--  
保存功能不可以使用,请问能保存svg文件么
--  作者:reallylove
--  发布时间:11/23/2006 1:16:00 PM

--  
想问问按钮怎么实现的
--  作者:unicornwhy
--  发布时间:11/24/2006 4:16:00 PM

--  
请问楼主能不能给代码分享一下,目前在做一个SVG相关的项目,急需资料
我的邮箱是: lyhunicorn@163.com

谢谢


--  作者:reallylove
--  发布时间:12/18/2006 9:43:00 AM

--  
不错,谢谢楼主!
--  作者:fqqq
--  发布时间:1/22/2007 10:22:00 PM

--  
我也需要,迫切需要。
qfff@sina.com,请问如何联系你
--  作者:wanlh
--  发布时间:2/8/2007 8:44:00 PM

--  
由于学校停电,服务器关了。本人目前在外地,无法重启服务器,故在线画图的网站暂时不能使用,见谅!估计达年前才能恢复。

另外,本人有心将此系统做成开源系统,但不知道希望开源需要做哪些准备?大家提供一些意见!


--  作者:lqwzx
--  发布时间:3/3/2007 12:06:00 PM

--  
wanlh大哥

我现在正在做一个画图的实验,看了你的在线画图很震惊,能不能给小弟一份代码呢?万分感谢!
lqwzx@sina.com


--  作者:lqwzx
--  发布时间:3/6/2007 11:12:00 AM

--  
我想问一下你是如何实现用鼠标直接画图的?

--  作者:longreach
--  发布时间:3/16/2007 9:29:00 AM

--  
楼主的水平很高呀,有时间可以交流呀,QQ:549308749,我们找一个SVG在线画图的产品呢
--  作者:longreach
--  发布时间:3/16/2007 9:37:00 AM

--  
觉的很棒啊,请加shizn72@hotmail.com交流,能把源玛发到邮箱吗,跪拜求!
--  作者:longreach
--  发布时间:3/16/2007 9:38:00 AM

--  
觉的很棒啊,请加shizn72@hotmail.com交流,能把源玛发到邮箱吗,跪拜求!
--  作者:jimnew88
--  发布时间:3/18/2007 12:42:00 PM

--  
你做的这个太牛叉了,向你学习啊,我的QQ是:443991531,希望能和你交流一下,而且请问一下你说你能够对SVG文件进行加密,这个如何实现呢,谢谢


--  作者:longreach
--  发布时间:3/20/2007 9:36:00 AM

--  
wanlh,老兄,你这个在线画图也太简单了吧,咱们联系一下,可以在这基础上做专业些好吗?我的MSN:shizn72@hotmail.com,或QQ:549308749,内容:讨论SVG,ok!
--  作者:fangxu1979
--  发布时间:3/21/2007 9:28:00 AM

--  
楼主对SVG的造诣很深啊,我正在学习SVG,能不能传个源代码啊,让我好好学习一下,谢谢了!! 邮箱是fangxu1979@163.com
--  作者:lgc88188
--  发布时间:4/1/2007 8:20:00 PM

--  你好!不错,麻烦给我一份,gc_liu@163.com
谢谢你,你我发一份,学习学习    gc_liu@163.com
--  作者:lgc88188
--  发布时间:4/1/2007 8:33:00 PM

--  问一下?
请问自定义的图符怎么不能用,如:家具类,沙发.我很想知道怎样自定义图标并应用到绘图中去.谢谢
!!!!!!
--  作者:bloodred
--  发布时间:4/4/2007 8:56:00 AM

--  
麻烦发一份,学习学习    
谢谢!
zhangqian008@hotmail.com
--  作者:yore2003
--  发布时间:4/10/2007 2:37:00 PM

--  我正在学习svg
你好,我正在学习SVG,能否给我发一份源代码,yore2003@tom.com
--  作者:lxprabbit
--  发布时间:4/11/2007 1:41:00 PM

--  
谢谢啊!发一份啊:lxprabbit@sohu.com
--  作者:lxprabbit
--  发布时间:4/11/2007 9:02:00 PM

--  
真是强啊!
本人近期由于课题需要,正在做基于SVG的UML图形编辑工具,能否指点一下该如何实现?
--  作者:reganmian
--  发布时间:4/15/2007 9:10:00 AM

--  
你好,我正在学习SVG,能否给我发一份源代码,reganmian04@yahoo.com.cn
--  作者:gengwei80
--  发布时间:4/18/2007 5:22:00 PM

--  
选中图形,放大旋转怎么实现的啊,
--  作者:luttscao
--  发布时间:5/5/2007 6:26:00 PM

--  
个人认为,现在这种在线画图并没有什么吸引力,如果用SVG画静态图的画我相信%99的人不会选择SVG,我觉得要在两方面做工作:一、让他动起来。现在Adobe快要放弃对Adobe SVG Viewer的支持了,可能就是认为让一个会做出很棒的Flash的人去写Javascript代码简直是要他的命!人家又不是程序员,只是一个图像工作者,怎么可能像天天写着难于调试的程序员那样去写脚本呢?二、与数据库的结合,实时展现数据库里的内容,显示为图表等。

应该在制作一个像FlashMX那样的程序上下功夫,自动生成脚本,否则SVG只能成为高贵的技术,只能成为那些编程高手的玩物!

对于与数据库的结合,我觉得SVG很有前途!SVG在MVC模式中就是viewer,而且他对CSS的支持能方便美工去将图像做到最好看,而写Javascript画图以及交互可以由专业的程序员来做。这比诸如JFreechart之类的程序有更大的灵活性


--  作者:lxprabbit
--  发布时间:5/10/2007 11:12:00 AM

--  急!请教!请教!
真是强啊!
我也在做个画图。
文件保存为: var fso=new ActiveXObject("Scripting.FileSystemObject");
在单机下运行很好,可是放到Tomcat下就出错了——Automation 服务器不能创建对象错误!

我想让svg文件在tomcat服务器下实现自动保存,请问该如何实现呢?或者让svg文件保存到服务器上,该如何实现呢?

多谢!


--  作者:wanlh
--  发布时间:5/12/2007 8:33:00 AM

--  
以下是引用luttscao在2007-5-5 18:26:00的发言:
个人认为,现在这种在线画图并没有什么吸引力,如果用SVG画静态图的画我相信%99的人不会选择SVG,我觉得要在两方面做工作:一、让他动起来。现在Adobe快要放弃对Adobe SVG Viewer的支持了,可能就是认为让一个会做出很棒的Flash的人去写Javascript代码简直是要他的命!人家又不是程序员,只是一个图像工作者,怎么可能像天天写着难于调试的程序员那样去写脚本呢?二、与数据库的结合,实时展现数据库里的内容,显示为图表等。

应该在制作一个像FlashMX那样的程序上下功夫,自动生成脚本,否则SVG只能成为高贵的技术,只能成为那些编程高手的玩物!

对于与数据库的结合,我觉得SVG很有前途!SVG在MVC模式中就是viewer,而且他对CSS的支持能方便美工去将图像做到最好看,而写Javascript画图以及交互可以由专业的程序员来做。这比诸如JFreechart之类的程序有更大的灵活性


谢谢你的建议,其实我也想到了这一点,只是目前没有那么多时间和精力来做这些事情,等有时间再慢慢完善吧。


--  作者:wanlh
--  发布时间:5/12/2007 8:37:00 AM

--  
以下是引用lxprabbit在2007-5-10 11:12:00的发言:
真是强啊!
我也在做个画图。
文件保存为: var fso=new ActiveXObject("Scripting.FileSystemObject");
在单机下运行很好,可是放到Tomcat下就出错了——Automation 服务器不能创建对象错误!

我想让svg文件在tomcat服务器下实现自动保存,请问该如何实现呢?或者让svg文件保存到服务器上,该如何实现呢?

多谢!


你可以定义一个表单,在其中定义一个隐藏的input,提交表单前,用Javascript将SVG图形对应的XML存到这个隐藏的input中,然后提交表单即可.


--  作者:chmdcr
--  发布时间:5/14/2007 11:22:00 AM

--  
小弟最近打算用C++做个SVG的编辑器  有些问题想请教 当图形旋转的时候是怎么实现的  挨个点进行坐标变换吗?还是有其他的方法 请指教   cm1018@sina.com.cn  Email联系我  谢谢
--  作者:konanzl
--  发布时间:5/22/2007 3:11:00 PM

--  
楼主 真是个强人   收藏了。。
--  作者:fengxiao.li
--  发布时间:5/26/2007 12:05:00 PM

--  
不错,但尚有不足之处
--  作者:donald131
--  发布时间:6/9/2007 10:20:00 PM

--  
开眼了
--  作者:hawk108
--  发布时间:6/29/2007 5:39:00 PM

--  
大家好,小弟最近在学习SVG,各位大哥能不能给小弟传一份啊?跪谢
fdy2598096@yahoo.com.cn  
qq:45087307
--  作者:zw1213
--  发布时间:7/8/2007 3:49:00 PM

--  
请问是如何移动画的直线和箭头的?
--  作者:holy_1126
--  发布时间:7/25/2007 6:02:00 PM

--  
楼主真的很强!好想要源代码学习!
--  作者:mlmzw
--  发布时间:8/10/2007 5:21:00 PM

--  
谁还有代码,发给我份:mlmzw@126.com
万分感谢了

--  作者:handsom
--  发布时间:8/27/2007 6:34:00 PM

--  
我为什么没有看到呀


--  作者:vienna
--  发布时间:9/12/2007 3:58:00 PM

--  
我也想了解一下。
--  作者:seasky_888
--  发布时间:9/13/2007 10:45:00 PM

--  
能不能给份代码,我在学习SVG,多谢了,楼主 wxl@sdu.edu.cn
--  作者:Tsinghua_shi
--  发布时间:10/23/2007 11:23:00 AM

--  
en ,bucuo
--  作者:chlf6312
--  发布时间:10/28/2007 4:22:00 PM

--  
新手学习了,能不能给份源代码?谢谢楼主
--  作者:chlf6312
--  发布时间:10/28/2007 4:23:00 PM

--  
我的邮箱是chlf6312@163.com,谢谢
--  作者:wjcumt001
--  发布时间:11/15/2007 9:15:00 AM

--  
强!!
--  作者:wawaa
--  发布时间:11/16/2007 9:53:00 AM

--  
希望能给份源码学习学习!谢谢
lxhy366@126.com
--  作者:luzhaoneng
--  发布时间:11/18/2007 6:06:00 PM

--  
楼主,可以发份代码过来学习一下吗?luzhaoneng8@hotmail.com
--  作者:hequnmin
--  发布时间:11/29/2007 11:59:00 AM

--  
强!
wanlh老大,小弟正在学习SVG,能否发份源码学习学习?不胜感激!
hequnmin@163.com
--  作者:hequnmin
--  发布时间:11/29/2007 12:02:00 PM

--  
流程图的不能用~~~
期待完善流程图~~~
--  作者:tianmu
--  发布时间:12/6/2007 11:37:00 AM

--  
可以给个源码学习学习吗?mafengmei.fm@126.com非常感谢!
--  作者:laputain
--  发布时间:12/17/2007 5:56:00 PM

--  
楼主,希望给发一份研究一下,谢谢啦
sandieyao@sina.com
--  作者:lovemitter
--  发布时间:12/20/2007 8:48:00 PM

--  
恩,不错,这个,顶一把,楼主能加一下我qq吗?
45976023
--  作者:panda0729
--  发布时间:1/1/2008 7:57:00 PM

--  

--  作者:panda0729
--  发布时间:1/1/2008 7:58:00 PM

--  
jhsdjkfjd
--  作者:mydriverc
--  发布时间:1/17/2008 9:33:00 PM

--  
做得太好了!搂主能不能也给我一份源代码来研究啊!
mydriverc@qq.com
--  作者:wuho
--  发布时间:2/17/2008 5:20:00 PM

--  
2006年的贴子了,不知道还能要到源码不,谁有的话给我一份wuho@163.com
--  作者:zaqmax
--  发布时间:2/20/2008 3:23:00 PM

--  同楼上
帖子时间已经比较长,不知道是否再能发源码学习:loulx@milkway.com
--  作者:darkfxux
--  发布时间:2/29/2008 4:57:00 PM

--  
哇,很久前的东西了,不过我才接触,学习一下,如何画线?动态生成
xux@tfol.com
--  作者:金戈铁马
--  发布时间:3/4/2008 9:42:00 AM

--  
非常好。lz能共享代码吗?正在学习中。谢谢
yuhlster@gmail.com
--  作者:ztkx
--  发布时间:3/4/2008 3:28:00 PM

--  
flyincosmic@gmail.com
能否发一份源码,或者能够公开下载,感谢感谢
--  作者:jxfml
--  发布时间:3/10/2008 11:37:00 PM

--  有两个函数可以用
有两个函数可以在XML和SVG之间转换,就可以保存了,我是这样理解的
--  作者:longyinwoxie
--  发布时间:4/3/2008 3:41:00 PM

--  
正在学习SVG,楼主能否提供些代码,不胜感谢!yaozhisheng@gmail.com
--  作者:jerry73550895
--  发布时间:4/7/2008 1:33:00 PM

--  
很厉害啊!
我想看看图标滤镜等是怎么实现的?请问谁可以发份代码让我学习.不胜感激!
jerry73550895@sina.com
--  作者:hafeangel
--  发布时间:4/14/2008 9:53:00 AM

--  
你好,我对你的大作很希望学习下,能给我发份源代码?fcospt@gmail.com
--  作者:smartxxo
--  发布时间:5/12/2008 12:23:00 PM

--  
强大LZ
能讲解下如何由SVG图形生成SVG文档的么?
目前我使用的是BATIK平台的Graphics
小弟做毕业设计,不胜感激
116390119@163.com
--  作者:cepvoggg
--  发布时间:5/30/2008 10:23:00 PM

--  
能发一份给我吗,谢谢楼主了
cepvoggg@gmail.com
--  作者:ysblv
--  发布时间:6/5/2008 3:12:00 PM

--  
牛人,学习,帖子好像很久了,不知能不能得到源码,smthemail@126.com
--  作者:xiaoyaoac
--  发布时间:6/11/2008 10:52:00 AM

--  
目前正在学习SVG 能发一份源码给我吗?十分分感谢!xiaoyaoac@gmail.com
--  作者:ppy851014
--  发布时间:10/21/2008 10:16:00 AM

--  
请问下,能不能给我发下保存svg到数据库的代码啊?
我现在急用,而且不知道如何下手,希望帮帮忙,帮我发分代码
谢谢了!
--  作者:lilop
--  发布时间:10/22/2008 11:11:00 AM

--  
你小伙,jsp的 有没有asp 的啊
--  作者:zhaoguowei
--  发布时间:12/7/2008 8:41:00 PM

--  
觉的很棒啊,找了很久了,就觉得你的这个好,zhaoguowei_it@163.com,能把源玛发到邮箱吗,跪拜求!
--  作者:zhaoguowei
--  发布时间:12/7/2008 8:42:00 PM

--  
觉的很棒啊,找了很久了,就觉得你的这个好,zhaoguowei_it@163.com,能把源玛发到邮箱吗,跪拜求!
--  作者:jxfml
--  发布时间:12/15/2008 11:41:00 AM

--  很好,请给我一个源码
很好,请给我一个源码,378890850@QQ.com
--  作者:langxiaodilw@163.com
--  发布时间:5/2/2009 9:54:00 PM

--  有源码的话也给我分
我想、刚学svg  感觉整这个的人很少啊 而且貌似没有人愿意回答新手的问题 是这个论坛的人少吗
--  作者:mutian12345
--  发布时间:10/30/2009 8:00:00 PM

--  
怎么打不开啊
--  作者:wanlh
--  发布时间:10/31/2009 9:09:00 AM

--  
原先网站的硬盘坏了,所有的数据都没了。SVG在线画图的网站转到http://wanlh.ipchina.org/course/webdraw/webbrush.jsp
--  作者:mutian12345
--  发布时间:10/31/2009 9:13:00 AM

--  
拜托你,可以给我提供一份代码吗?非常感谢,mafengmei.fm@126.com
--  作者:mutian12345
--  发布时间:10/31/2009 9:16:00 AM

--  
mafengmei.fm@126.com,非常需要一份。
--  作者:xiaoxi429
--  发布时间:4/22/2010 7:59:00 PM

--  
能不能给我发一份源码啊,现在正在学习svg,拜托了。
--  作者:hengase
--  发布时间:4/28/2010 11:15:00 AM

--  
你好,我正在学习SVG,能否给我发一份源代码,hengase@163.com
--  作者:jxfml
--  发布时间:12/30/2010 11:37:00 AM

--  请发一份原代码给我学习
楼主,因为学习矢量图误入SVG,现在迷上SVG,请楼主发一份源代码,万分感谢。378890850@QQ.com
--  作者:曾经的你
--  发布时间:5/10/2012 9:01:00 AM

--  
能发一份源码给我么?谢谢了,1599091410@qq.com
--  作者:曾经的你
--  发布时间:5/10/2012 10:02:00 AM

--  
在线画图对于网络的速度和系统的开销影响大么
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
390.625ms