Why this line is broken?

  • Why this line is broken?
    How to fix?

    Points with the same coordinates.

  • Hi,

    What do you mean "broken"?

    if you want a "closed line" instead of a "open line" just add the initial coordinate to the end

    Is this what you need?

    Code
    <point ath="86.07044155490267" atv="20.03982773289202" /> 
    <point ath="86.57163281072745" atv="20.04128882538929" /> 
    <point ath="86.38588510110205" atv="19.395537750448867" /> 
    <point ath="85.37093957898665" atv="19.37779266037042" /> 
    <point ath="-61.96617072583382" atv="31.761569778015883" /> 
    <point ath="-74.24470845545018" atv="33.51841419290914" />
    <point ath="86.07044155490267" atv="20.03982773289202" /> <---- like so
  • Hi,

    that's a limitation of the current WebGL-based line rendering - the given coordinates are getting projected to a flat surface and that fails due the large spherical area they cover.

    As workaround you could try adding renderer="svg":

    Code
    <hotspot ... 
       renderer="svg"
    >


    Or add convert the spherical coordinates to 3D ones - a polygon with 3D coordinates is not limited or affected the flat-surface projection.

    E.g. this could be done automatically using such action:

    Code
    <action name="convert_to_3d_polygon" scope="local">
       for(set(i,0), i LT caller.point.count, inc(i),
           copy(p, caller.point[get(i)]);
           spheretospace(p.ath, p.atv, 1000, p.x, p.y, p.z);
       );
    </action>

    and

    Code
    <hotspot ... 
       onloaded="convert_to_3d_polygon()"
    >
       ...
    </hotspot>


    Best regards,
    Klaus

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!