Skip to content

Commit c0ddb6a

Browse files
committed
Considering sing multiplication on the penalty
1 parent 08ebf6b commit c0ddb6a

File tree

2 files changed

+17
-19
lines changed

2 files changed

+17
-19
lines changed

docs/scripts/basic/vehicles/images.sql

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ CREATE OR REPLACE VIEW vehicle_use_penalty_png AS
3737
WITH dijkstra AS (
3838
SELECT * FROM pgr_dijkstra(
3939
'SELECT v.id, source, target,
40-
cost * penalty AS cost,
41-
reverse_cost * penalty AS reverse_cost
40+
CASE WHEN cost <= 0 THEN -1 ELSE cost * penalty END AS cost,
41+
CASE WHEN reverse_cost <= 0 THEN -1 ELSE reverse_cost * penalty END AS reverse_cost
4242
FROM vehicle_net AS v JOIN configuration
4343
USING (tag_id)',
4444
@ID_3@, @ID_1@)
@@ -65,8 +65,8 @@ CREATE OR REPLACE VIEW vehicle_get_penalized_route_png AS
6565
WITH dijkstra AS (
6666
SELECT * FROM pgr_dijkstra(
6767
'SELECT v.id, source, target,
68-
cost * penalty AS cost,
69-
reverse_cost * penalty AS reverse_cost
68+
CASE WHEN cost <= 0 THEN -1 ELSE cost * penalty END AS cost,
69+
CASE WHEN reverse_cost <= 0 THEN -1 ELSE reverse_cost * penalty END AS reverse_cost
7070
FROM vehicle_net AS v JOIN configuration
7171
USING (tag_id)',
7272
@ID_3@, @ID_1@)

docs/scripts/basic/vehicles/vehicles.sql

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,11 @@ ALTER TABLE configuration
4444

4545
SELECT * FROM pgr_dijkstra(
4646
'SELECT v.id, source, target,
47-
cost * penalty AS cost,
48-
reverse_cost * penalty AS reverse_cost
47+
CASE WHEN cost <= 0 THEN -1 ELSE cost * penalty END AS cost,
48+
CASE WHEN reverse_cost <= 0 THEN -1 ELSE reverse_cost * penalty END AS reverse_cost
4949
FROM vehicle_net AS v JOIN configuration
5050
USING (tag_id)',
51-
@ID_3@, @ID_1@);
51+
@ID_3@, @ID_1@);
5252

5353
\o update_penalty.txt
5454

@@ -72,11 +72,11 @@ WHERE tag_value IN (
7272

7373
SELECT * FROM pgr_dijkstra(
7474
'SELECT v.id, source, target,
75-
cost * penalty AS cost,
76-
reverse_cost * penalty AS reverse_cost
75+
CASE WHEN cost <= 0 THEN -1 ELSE cost * penalty END AS cost,
76+
CASE WHEN reverse_cost <= 0 THEN -1 ELSE reverse_cost * penalty END AS reverse_cost
7777
FROM vehicle_net AS v JOIN configuration
7878
USING (tag_id)',
79-
@ID_3@, @ID_1@);
79+
@ID_3@, @ID_1@);
8080

8181
\o time_in_secs.txt
8282

@@ -86,13 +86,11 @@ SELECT * FROM pgr_dijkstra(
8686
FROM (
8787
-- Nested call
8888
SELECT edge AS id FROM pgr_dijkstra(
89-
'
90-
SELECT v.id, source, target,
91-
cost * penalty AS cost,
92-
reverse_cost * penalty AS reverse_cost
93-
FROM vehicle_net AS v JOIN configuration
94-
USING (tag_id)
95-
',
89+
'SELECT v.id, source, target,
90+
CASE WHEN cost <= 0 THEN -1 ELSE cost * penalty END AS cost,
91+
CASE WHEN reverse_cost <= 0 THEN -1 ELSE reverse_cost * penalty END AS reverse_cost
92+
FROM vehicle_net AS v JOIN configuration
93+
USING (tag_id)',
9694
@ID_3@, @ID_1@) ) AS edges_in_route
9795
JOIN vehicle_net USING (id)
9896
$$,
@@ -103,8 +101,8 @@ SELECT * FROM pgr_dijkstra(
103101
CREATE OR REPLACE VIEW penalized AS
104102
SELECT
105103
v.id, source, target,
106-
cost * penalty AS cost,
107-
reverse_cost * penalty AS reverse_cost
104+
CASE WHEN cost <= 0 THEN -1 ELSE cost * penalty END AS cost,
105+
CASE WHEN reverse_cost <= 0 THEN -1 ELSE reverse_cost * penalty END AS reverse_cost
108106
FROM vehicle_net AS v JOIN configuration
109107
USING (tag_id);
110108

0 commit comments

Comments
 (0)