以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 SVG/GML/VRML/X3D/XAML 』 (http://bbs.xml.org.cn/list.asp?boardid=21) ---- 关于平滑处理polyline及如何得到曲线上的坐标 (http://bbs.xml.org.cn/dispbbs.asp?boardid=21&rootid=&id=74783) |
-- 作者:cjsy2009 -- 发布时间:5/11/2009 11:57:00 PM -- 关于平滑处理polyline及如何得到曲线上的坐标 我现在正学习SVG, 有几个问题想请教。 通过一系列点,我们可以画出一条POLYLINE, 我的问题是在SVG中能不能将此polyline平滑处理. 是不是需要什么算法? 另外一个问题是, 我想在y轴上画一条竖线与此polyline交叉,现在已知x轴的坐标,请问如何找到相应的交叉点坐标? 谢谢。 |
-- 作者:Qr -- 发布时间:5/12/2009 1:11:00 PM -- 1、polyline是由一批线首尾相连而成的一组线,从而形成一条折线。对于polyline,SVG没有提供平滑处理,要想"平滑",只能定义足够多的坐标,以便绘出的折线更“平滑”。 2、polyline作为折线,很难根据某一条折线计算出其某一点的坐标,除非这条折线符合一定的规律,能够用几何的方法进行计算。遇到你这种情况,一般在计算所要绘制折线坐标的同时,进行相应的处理。当你要找交叉点坐标时,根据已知x轴的坐标去匹配得到。 path在“平滑”方面比polyline优秀。 |
-- 作者:cjsy2009 -- 发布时间:5/13/2009 5:17:00 AM -- 谢谢qr. 我在用XSLT转化polyline时遇到一个问题,程序如下: <polyline points="0 0, 28.43543543 27.5635340534, 169.22442342342 169.343423432, 320.3243232432, 245.45455345345" style="stroke : black; stroke-width : 2; fill : none"/> <!-- 正常显示--> <xsl:variable name="points"> <xsl:for-each select="$poly-points"> <xsl:sort data-type="number" select="x"/> <xsl:if test="position() != 1"> <![CDATA[, ]]> </xsl:if> <xsl:value-of select="x"/> <xsl:value-of select="y"/> </xsl:for-each> </xsl:variable> <text x="100" y="100"> <xsl:value-of select="$points"/> </text> <!-- 正常显示一系列坐标--> <xsl:element name="polyline"> |
-- 作者:Qr -- 发布时间:5/13/2009 11:09:00 AM -- 把 <xsl:attribute name="points"> <xsl:value-of select="$points"/> </xsl:attribute> 改成 <xsl:attribute name="points"><xsl:value-of select="$points"/></xsl:attribute> 试试看。在使用XSL时经常遇到换行与不换行的问题,效果往往有细微不同。 或:“ ”改“<text> </text>” XSLT转SVG我做过4、5次,但是比较早以前的事了,具体是否用到变量&怎么做已经模糊了。没有具体的代码,不好调试,自己试一下看吧。 |
-- 作者:cjsy2009 -- 发布时间:5/14/2009 12:49:00 PM -- it works 把 换成<xsl:text> </xsl:text>, 图形能正常显示。有意思的是,我原先用<![CDATA[ ]]>,却不能显示。难道两者有什么不同吗? 很高兴发的帖子能很快回复,再次谢谢qr。 |
-- 作者:Qr -- 发布时间:5/14/2009 2:24:00 PM -- <![CDATA[ ]]>可能会被保留在转换后的SVG中,导致无法识别。<xsl:text> </xsl:text>则不会,它只会输出标记内的字符。 |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
58.594ms |