<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Hi anonymous,<br>
      <br>
      <br>
      > So during the time of creating the street graph, the
      vehicles' nodes will be <br>
      > considered and have their own indecies in the original nodes
      array. <br>
      <br>
      Yes, that was what I meant.<br>
      <br>
      But now I know better what you mean with this kind of car sharing.
      Then it is indeed a bit different and I would assign the position
      to the two nodes of the edge, but associated with a different
      weight in the algorithm reflecting the precise position and
      skipping node(s) in case of one ways.<br>
      <br>
      The problematic is indeed very similar to the "QueryGraph vs.
      precise GPS routing" discussion:<br>
      <a class="moz-txt-link-freetext" href="https://github.com/graphhopper/graphhopper/issues/27">https://github.com/graphhopper/graphhopper/issues/27</a><br>
      <a class="moz-txt-link-freetext" href="https://github.com/graphhopper/graphhopper/pull/115">https://github.com/graphhopper/graphhopper/pull/115</a><br>
      <br>
      <br>
      <div>> sorry for the long discussion. just trying to understand
        the alternatives before going further.<br>
        <br>
        No problem. Interesting use case.<br>
        <br>
      </div>
      Regards,<br>
      Peter<br>
      <br>
      On 23.07.2015 18:52, graphhopper newbie wrote:<br>
    </div>
    <blockquote
cite="mid:CAJtFbiJisZo-KzemuD+cv16xLDOHB3CRm_i_HVQ0UU6d5c1=3w@mail.gmail.com"
      type="cite">
      <div dir="ltr">If I correctly understand you, this would solve the
        problem of adding vehicle representative nodes. So during the
        time of creating the street graph, the vehicles' nodes will be
        considered and have their own indecies in the original nodes
        array. However, what I miss is how to maintain the dynamic
        edges. when a vehicle is parked somewhere, an edge has to be
        added to connect it to the closest street node and the previous
        connecting edges have to be removed.
        <div><br>
        </div>
        <div><br>
        </div>
        <div>Another interpretation that might be what you mean is that
          not to add vehicle nodes at all and consider the closest
          original street node to the vehicle to be the vehicle
          representative node and to add it to the data structure you
          mentioned earlier. if this is the case then I would miss some
          information I was planning to model using the edge connecting
          the street node and the vehicle node (still can be done
          implicitly) </div>
        <div><br>
        </div>
        <div>sorry for the long discussion. just trying to understand
          the alternatives before going further.</div>
        <div><br>
        </div>
        <div>Regards</div>
        <div class="gmail_extra"><br>
          <div class="gmail_quote">On 23 July 2015 at 16:58, Peter <span
              dir="ltr"><<a moz-do-not-send="true"
                href="mailto:graphhopper@gmx.de" target="_blank">graphhopper@gmx.de</a>></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">
                <div>I would just mark (in a different data structure)
                  that these nodes are special e.g. in an array or
                  (RAM)DataAccess which is more complex but also
                  storable and scales to GB.<br>
                  <br>
                  This way you don't need to remove/re-add them and
                  instead can just remove the marker from the array. A
                  lot easier IMO.<br>
                  <br>
                  Regards,<br>
                  Peter<span class=""><br>
                    <br>
                    On 23.07.2015 16:17, graphhopper newbie wrote:<br>
                  </span></div>
                <span class="">
                  <blockquote type="cite">
                    <div dir="ltr">Thanks for the reply,
                      <div>The use case makes the situation dynamic.
                        Assume that you have free floating carsharing
                        vehicles. Let us assume that these vehicles can
                        be parked everywehere. what I wanted to do is to
                        periodically link these vehicles to the closest
                        nodes in the original street graph (remove old
                        links when vehicles change their positions).
                        This way the vehicles will be represented as
                        nodes in the graph and routing will be easier
                        later. My routing algorithm has to be able to
                        switch from walk to drive mode when such vehicle
                        node is found. the goal is to have
                        walk-drive-walk route in one Dijkstra run.</div>
                      <div><br>
                      </div>
                      <div>Regards,</div>
                    </div>
                    <div class="gmail_extra"><br>
                      <div class="gmail_quote">On 23 July 2015 at 15:47,
                        Peter <span dir="ltr"><<a
                            moz-do-not-send="true"
                            href="mailto:graphhopper@gmx.de"
                            target="_blank">graphhopper@gmx.de</a>></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">
                            <div>Hi,<br>
                              <br>
                              you can, but there is currently no way to
                              remove such edges (efficiently).<br>
                              <br>
                              Another workaround would be to use the
                              QueryGraph for this like we use to
                              introduce virtual nodes and edges to
                              incorporate the start+end GPS point into
                              the graph. But never tried this.<br>
                              <br>
                              Why not always add all such points to the
                              graph, why is a dynamic scenario needed
                              here?<br>
                              <br>
                              Kind Regards,<br>
                              Peter
                              <div>
                                <div><br>
                                  <br>
                                  On 23.07.2015 15:42, graphhopper
                                  newbie wrote:<br>
                                </div>
                              </div>
                            </div>
                            <blockquote type="cite">
                              <div>
                                <div>
                                  <div dir="ltr">Hi everybody,
                                    <div>I am wondering if I can add
                                      nodes and edges to the graph after
                                      its creation in a dynamic way. I
                                      need this functionality to deal
                                      with dynamic scenarios like
                                      representing available
                                      bikesharing/carsharing points
                                      which changes often. The simpist
                                      case I need is to add an edge from
                                      a newly added node ( representing
                                      the available bike) to the closest
                                      node in the graph and the reverse
                                      edge. i.e. from the closest node
                                      to the the bike node. </div>
                                    <div><br>
                                    </div>
                                    <div>Thank you very much,<br>
                                    </div>
                                  </div>
                                </div>
                              </div>
                            </blockquote>
                          </div>
                        </blockquote>
                      </div>
                    </div>
                  </blockquote>
                  <br>
                </span></div>
              <br>
            </blockquote>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>