Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Aug 03 21:38
    cvvergara edited #1893
  • Aug 03 21:37
    cvvergara closed #1926
  • Aug 03 21:37
    cvvergara edited #1893
  • Aug 03 21:37
    cvvergara closed #1925
  • Aug 03 21:36

    cvvergara on develop

    [c_types][C] fixing include/c_t… (compare)

  • Aug 03 21:36
    cvvergara closed #2044
  • Aug 03 21:36
    cvvergara labeled #2047
  • Aug 03 21:36
    cvvergara opened #2047
  • Aug 03 21:23

    cvvergara on develop

    [c_types][C] fixing include/c_t… (compare)

  • Aug 03 21:23
    cvvergara closed #2043
  • Aug 03 21:17
    cvvergara edited #1893
  • Aug 03 21:17
    cvvergara closed #1915
  • Aug 03 21:16

    cvvergara on develop

    [c_types][C] fixing mst_rt.h (compare)

  • Aug 03 21:16
    cvvergara closed #2046
  • Aug 03 21:12
    cvvergara edited #1893
  • Aug 03 21:12
    cvvergara closed #1917
  • Aug 03 21:12

    cvvergara on develop

    [c_types] removing unused type (compare)

  • Aug 03 21:12
    cvvergara closed #2045
  • Aug 03 21:07
    cvvergara assigned #1929
  • Aug 03 21:05
    cvvergara review_requested #2046
Ashish Kumar
@krashish8
How can we create a graph in pgRouting with an isolated vertex, or with two isolated vertices, etc. (vertices having no degree)?
I guess this functionality should be there in pgRouting.
Since we have an edge representation of the graph, the best I can try was to represent the graph in the following way:
For one isolated vertex:
 id | source | target | cost | reverse_cost 
----+--------+--------+------+--------------
  1 |      1 |      1 |   -1 |           -1
(1 row)
For two isolated vertices:
 id | source | target | cost | reverse_cost 
----+--------+--------+------+--------------
  1 |      1 |      2 |   -1 |           -1
  2 |      2 |      1 |   -1 |           -1
(2 rows)
But in both the cases, the source and target vertices were not created, and the edge was not added.
(If I checked it correctly)
In my opinion, both the source and target vertices should get created, with no edge between them.
While creating a graph in pgRouting, we call the insert_edges function which then calls the graph_add_edge function. But the second function returns directly if both the cost and reverse_cost are negative (i.e. when the edge does not exist in the graph).
Is there some other way to create isolated vertices, by directly using the insert_edges function of pgRouting (pgr_base_graph.hpp)?
Vicky Vergara
@cvvergara
Who wants to create an isolated vertex? pgRouting? the user of pgRouting?
Ashish Kumar
@krashish8
I mean "the user of pgRouting".
But if the user tries to do it in the way I mentioned above, the isolated vertices aren't created internally in pgRouting, if we use the insert_edges function defined in pgr_base_graph.hpp
Vicky Vergara
@cvvergara
Why does the user want to create an isolated vertex?
Ashish Kumar
@krashish8

I mean the user may want to do that. It entirely depends upon the user.

As an example, for the graph coloring algorithm, if the graph contains an isolated vertex, it should also have some color assigned to it.

Example: coloring a map, such that two neighbouring states have different color. If the map contains an island state, it should also have some color assigned to it.
Vicky Vergara
@cvvergara
The island is not isolated
Vicky Vergara
@cvvergara
Portugal, Spain, Mexico, USA, Cuba (using the first letter)
P-S, M-U, M-C, U-C that would be the graph representing neighbours
Ashish Kumar
@krashish8
Fine. Got it!
Vicky Vergara
@cvvergara
Now the answer to your initial question.
To have an isolated vertex use ´0´ the edge will be added so the vertex.
 id | source | target | cost | reverse_cost 
----+--------+--------+------+--------------
  1 |      1 |      1 |   0 |           -1
(1 row)
Ashish Kumar
@krashish8
Okay. Thanks, got it!
Vicky Vergara
@cvvergara

As part of the Bolsena code spring:

In around 20 minutes will be working checking the PR #1361 with the author, you are welcome to join
Vicky Vergara
@cvvergara

Topic: PR #1361 review

Mohamed Bakli
@mbakli
Many thanks for adding me.
Vicky Vergara
@cvvergara
Hello @mbakli thanks for coming, we are going to review your PR
Mohamed Bakli
@mbakli
I am ready.
Vicky Vergara
@cvvergara

Plan of the week:

  • detect issues
  • fix issues
  • make one commit
  • merge to master
  • prepare master for v3.0.1
  • cherry pick the commit apply to develop
  • add the interruption code in the new functionality
  • move develop to master and release v.3.1.0
I will be doing prepare master for v3.0.1 you dont have to worry about that one

detect issues

One thing that needs to be done is add the appropriate licence to the new file you added
Mohamed Bakli
@mbakli
Ok
commit and push when done
(and tell me when done)
We have a style code checker, that follows some guidelines from https://google.github.io/styleguide/cppguide.html
we need to check
Vicky Vergara
@cvvergara
To check from the root of the repository do:
bash tools/scripts/code_checker.sh > marks.txt
You will see in the terminal that the file you created needs
INCLUDE_CPP_COMMON_INTERRUPTIONH
instead of
PGROUTING_INTERRUPTION_H
@mbakli I need to go fix a server crash, please do those things I will check them when I come back
Mohamed Bakli
@mbakli
@cvvergara I am doing them now
Mohamed Bakli
@mbakli
I did @cvvergara.
Mohamed Bakli
@mbakli
OK @cvvergara
travis seems to be working, I dont know why the other does not work
Mohamed Bakli
@mbakli
It should work.
Vicky Vergara
@cvvergara
I got this errors from the code checker:
include/cpp_common/interruption.h:27:  #ifndef header guard has wrong style, please use: INCLUDE_CPP_COMMON_INTERRUPTION_H_  [build/header_guard] [5]
include/cpp_common/interruption.h:39:  #endif line should be "#endif  // INCLUDE_CPP_COMMON_INTERRUPTION_H_"  [build/header_guard] [5]
include/cpp_common/interruption.h:35:  Include the directory when naming .h files  [build/include] [4]
include/cpp_common/interruption.h:36:  Include the directory when naming .h files  [build/include] [4]
include/cpp_common/interruption.h:39:  At least two spaces is best between code and comments  [whitespace/comments] [2]
include/cpp_common/interruption.h:39:  Should have a space between // and comment  [whitespace/comments] [4]
sec fixing format
you are missing an uderscore at the end of INCLUDE_CPP_COMMON_INTERRUPTION_H_

The files instead of

#include "postgres.h"

Use

#include <postgres.h>
Mohamed Bakli
@mbakli
OK