<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi Curt<br>
    <br>
    Yes, as I recall (and I will dig into my code as soon as I pay
    bills) a copy is constructed.&nbsp; So you need to walk through the
    points in the line itself and find the one that matches the one you
    want to change (I gave them all ids).&nbsp; THEN change it, THEN redraw
    the line.&nbsp; If you are doing a lot of lines or points, do them all
    then redraw the layer.<br>
    <br>
    Michael<br>
    <br>
    On 4/12/2012 9:36 AM, Curtis Olson wrote:
    <blockquote
cite="mid:CAHtsj_cFW4w_Mmm00cC1=+Epxza-sY-fEk2ba=3t0dOyBuf7Hw@mail.gmail.com"
      type="cite">Hi Michael (and everyone else who replied),
      <div><br>
        Thanks for your quick replies. &nbsp;I'm working on this some more
        today and have some follow up questions.</div>
      <div><br>
      </div>
      <div>I define my point list in the global scope:</div>
      <div><br>
        <div>
          <div>var route_points = new Array();<br>
            <br>
          </div>
          <div>Then I populate this array with a few points.</div>
          <div><br>
          </div>
          <div>Finally I can build the structures and add the result to
            a layer so I can see it (and I do see the result.)</div>
          <div><br>
          </div>
          <div>
            <div>lineString = new
              OpenLayers.Geometry.LineString(route_points);</div>
            <div>route_vector = new
              OpenLayers.Feature.Vector(lineString,null,home_style);</div>
            <div>routeLayer.addFeatures( route_vector );</div>
          </div>
          <div><br>
          </div>
          <div>Later I go back and change the location of a point in my
            route_list array of points.</div>
          <div><br>
          </div>
          <div>route_points[2].lon = newlon;</div>
          <div>route_points[2].lat = newlat;</div>
          <div><br>
          </div>
          <div>But nothing changes on screen. &nbsp;(for what it's worth, I
            can recreate all these structures and add them as a new
            layer to my map and I do see the new points in their correct
            locations, but it's as a new feature along with the old --
            I'm hoping to be able to simply modify the old structure
            rather than having to create a new (potentially
            large/complex) structure each iteration.</div>
          <div><br>
          </div>
          <div>I am wondering if the lineString or the Vector
            constructors use a copy of the upstream structure rather
            than a pointer to the structure? In that case changing my
            original structure would have no effect.</div>
          <div><br>
          </div>
          <div>I wouldn't mind using accessor functions to find the
            actual data point, but as I look through the class
            definitions and&nbsp;inheritance, I don't see any way to get back
            to the original point array when starting from a Vector() or
            a LineString()?</div>
          <div><br>
          </div>
          <div>I'm probably missing something stupid or easy, but I'm
            just not seeing it? &nbsp;Am I on the right track or missing by a
            mile?</div>
          <div><br>
          </div>
          <div>Thanks,</div>
          <div><br>
          </div>
          <div>Curt.</div>
          <div>
            <br>
          </div>
          <div><br>
          </div>
          <div><br>
          </div>
          <div class="gmail_quote">On Wed, Apr 11, 2012 at 2:22 PM,
            Michael <span dir="ltr">&lt;<a moz-do-not-send="true"
                href="mailto:mdm@yachtpc.com">mdm@yachtpc.com</a>&gt;</span>
            wrote:<br>
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <div bgcolor="#FFFFFF" text="#000000"> Both are doable.&nbsp;
                You need to do a little digging to be sure you are
                pointing to the correct point when you either change its
                lonlat or delete it.&nbsp; Then you need to redraw the line.<br>
                <br>
                In my application, I maintained a separate array
                pointing to the points in my line.&nbsp; Possibly not the
                most efficient, but it worked.<br>
                <br>
                Michael
                <div>
                  <div class="h5"><br>
                    <br>
                    On 4/11/2012 12:08 PM, Curtis Olson wrote: </div>
                </div>
                <blockquote type="cite">
                  <div>
                    <div class="h5">
                      <div>Hi,</div>
                      <div><br>
                      </div>
                      I've begun my plunge into openlayers and have a
                      number of things working, but I've run into a
                      question that I haven't been able to answer for
                      myself from the docs and the mailing list
                      archives.
                      <div> <br>
                      </div>
                      <div>I am building a map that will live track an
                        object (for example: my aircraft location as I
                        fly in the FlightGear flight simulator.)</div>
                      <div><br>
                      </div>
                      <div>I would like to leave a trail behind myself
                        showing my recent path (say for the past 10
                        seconds or the past 10 minutes.) &nbsp;I am imagining
                        a LineString where I can insert new points at
                        one end and remove points from the other end --
                        as my position updates.</div>
                      <div><br>
                        I could create an entirely new LineString and
                        Vector and add that to my layer 10x a second
                        (removing the old feature), but I was hoping I
                        could just build the linestring once, add it too
                        a layer once, and from then on just modify the
                        linestring structure.</div>
                      <div><br>
                        Is something like this possible or am I barking
                        up the wrong tree?</div>
                      <div><br>
                      </div>
                      <div>I have another sort of similar situation
                        where I may want to additionally modify the
                        point locations of some of the points in the
                        linestring (based on external data coming from
                        the flight simulator.) &nbsp;In otherwords I want to
                        reshape the linestring by adjusting the
                        locations of individual points. &nbsp;Is anything
                        like this possible?</div>
                      <div><br>
                        I've been hunting through the examples and the
                        documentation and haven't stumbled on the
                        appropriate magic yet.</div>
                      <div><br>
                      </div>
                      <div>Any tips or pointers or nudges for an
                        openlayers newbie?</div>
                      <div> <br>
                        Thanks,</div>
                      <div><br>
                      </div>
                      <div>Curt.<br>
                        -- <br>
                        <div>
                          <div>Curtis Olson:</div>
                          <div><a moz-do-not-send="true"
                              href="http://www.atiak.com"
                              target="_blank">http://www.atiak.com</a> -
                            <a moz-do-not-send="true"
                              href="http://aem.umn.edu/%7Euav/"
                              target="_blank">http://aem.umn.edu/~uav/</a></div>
                          <div><a moz-do-not-send="true"
                              href="http://www.flightgear.org"
                              target="_blank">http://www.flightgear.org</a>
                            - <a moz-do-not-send="true"
                              href="http://gallinazo.flightgear.org"
                              target="_blank">http://gallinazo.flightgear.org</a></div>
                        </div>
                        <br>
                      </div>
                      <br>
                      <fieldset></fieldset>
                      <br>
                    </div>
                  </div>
                  <pre>_______________________________________________
Users mailing list
<a moz-do-not-send="true" href="mailto:Users@lists.osgeo.org" target="_blank">Users@lists.osgeo.org</a>
<a moz-do-not-send="true" href="http://lists.osgeo.org/mailman/listinfo/openlayers-users" target="_blank">http://lists.osgeo.org/mailman/listinfo/openlayers-users</a>
</pre>
                </blockquote>
              </div>
              <br>
              _______________________________________________<br>
              Users mailing list<br>
              <a moz-do-not-send="true"
                href="mailto:Users@lists.osgeo.org">Users@lists.osgeo.org</a><br>
              <a moz-do-not-send="true"
                href="http://lists.osgeo.org/mailman/listinfo/openlayers-users"
                target="_blank">http://lists.osgeo.org/mailman/listinfo/openlayers-users</a><br>
              <br>
            </blockquote>
          </div>
          <br>
          <br clear="all">
          <div><br>
          </div>
          -- <br>
          <div>
            <div>Curtis Olson:</div>
            <div><a moz-do-not-send="true" href="http://www.atiak.com"
                target="_blank">http://www.atiak.com</a> - <a
                moz-do-not-send="true" href="http://aem.umn.edu/%7Euav/"
                target="_blank">http://aem.umn.edu/~uav/</a></div>
            <div><a moz-do-not-send="true"
                href="http://www.flightgear.org" target="_blank">http://www.flightgear.org</a>
              - <a moz-do-not-send="true"
                href="http://gallinazo.flightgear.org" target="_blank">http://gallinazo.flightgear.org</a></div>
          </div>
          <br>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Users@lists.osgeo.org">Users@lists.osgeo.org</a>
<a class="moz-txt-link-freetext" href="http://lists.osgeo.org/mailman/listinfo/openlayers-users">http://lists.osgeo.org/mailman/listinfo/openlayers-users</a>
</pre>
    </blockquote>
  </body>
</html>