Skip to content

Commit 732afbe

Browse files
wip refactor rpc
1 parent 4ebce40 commit 732afbe

File tree

10 files changed

+182
-122
lines changed

10 files changed

+182
-122
lines changed

src/opengeodeweb_viewer/object/object_methods.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,27 +110,45 @@ def SetEdgesVisibility(self, id, visibility):
110110
actor = self.get_object(id)["actor"]
111111
actor.GetProperty().SetEdgeVisibility(visibility)
112112
self.render()
113+
114+
def SetEdgesSize(self, id, size):
115+
actor = self.get_object(id)["actor"]
116+
actor.GetProperty().SetEdgeWidth(size)
117+
print("GetEdgeSize", actor.GetProperty().GetEdgeWidth())
118+
self.render()
113119

114120
def SetEdgesColor(self, id, color):
115121
actor = self.get_object(id)["actor"]
116122
actor.GetProperty().SetEdgeColor(color)
123+
print("GetEdgeColor", actor.GetProperty().GetEdgeColor())
117124
self.render()
118125

119126
def SetPointsVisibility(self, id, visibility):
120127
actor = self.get_object(id)["actor"]
121128
actor.GetProperty().SetVertexVisibility(visibility)
129+
actor.GetProperty().SetEdgeVisibility(visibility)
122130
self.render()
123131

124132
def SetPointsSize(self, id, size):
125133
actor = self.get_object(id)["actor"]
126134
actor.GetProperty().SetPointSize(size)
127135
self.render()
128136

137+
def SetPointsColor(self, id, color):
138+
actor = self.get_object(id)["actor"]
139+
actor.GetProperty().SetVertexColor(color)
140+
self.render()
141+
129142
def SetPolygonsVisibility(self, id, visibility):
130143
actor = self.get_object(id)["actor"]
131144
actor.GetProperty().SetPolygonVisibility(visibility)
132145
self.render()
133146

147+
def SetPolygonsColor(self, id, color):
148+
actor = self.get_object(id)["actor"]
149+
actor.GetProperty().SetColor(color)
150+
self.render()
151+
134152
def clearColors(self, id):
135153
db = self.get_object(id)
136154
mapper = db["mapper"]

src/opengeodeweb_viewer/rpc/generic/generic_protocols.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ def __init__(self, mesh_protocols, model_protocols):
2424

2525
@exportRpc(prefix + schemas_dict["register"]["rpc"])
2626
def register(self, params):
27-
print(self.schemas_dict["register"]["rpc"], f"{params=}", flush=True)
27+
print(self.prefix + self.schemas_dict["register"]["rpc"], f"{params=}", flush=True)
2828
validate_schema(params, self.schemas_dict["register"])
2929
viewer_object = params["viewer_object"]
3030
params.pop('viewer_object', None)
@@ -36,7 +36,7 @@ def register(self, params):
3636

3737
@exportRpc(prefix + schemas_dict["deregister"]["rpc"])
3838
def deregister(self, params):
39-
print(self.schemas_dict["deregister"]["rpc"], f"{params=}", flush=True)
39+
print(self.prefix + self.schemas_dict["deregister"]["rpc"], f"{params=}", flush=True)
4040
validate_schema(params, self.schemas_dict["deregister"])
4141
viewer_object = params["viewer_object"]
4242
params.pop('viewer_object', None)

src/opengeodeweb_viewer/rpc/mesh/edges/edges_protocols.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,23 +17,25 @@ def __init__(self):
1717

1818
@exportRpc(prefix + schemas_dict["visibility"]["rpc"])
1919
def setMeshEdgesVisibility(self, params):
20-
print(self.schemas_dict["visibility"]["rpc"], f"{params=}", flush=True)
20+
print(self.prefix + self.schemas_dict["visibility"]["rpc"], f"{params=}", flush=True)
2121
validate_schema(params, self.schemas_dict["visibility"])
2222
id = params["id"]
2323
visibility = bool(params["visibility"])
2424
self.SetEdgesVisibility(id, visibility)
2525

2626
@exportRpc(prefix + schemas_dict["color"]["rpc"])
2727
def setMeshEdgesColor(self, params):
28-
print(self.schemas_dict["color"]["rpc"], f"{params=}", flush=True)
28+
print(self.prefix + self.schemas_dict["color"]["rpc"], f"{params=}", flush=True)
2929
validate_schema(params, self.schemas_dict["color"])
3030
id = params["id"]
31-
color = bool(params["color"])
32-
self.SetEdgesColor(id, color)
31+
red = 1.0 * params["color"]["r"]
32+
green = 1.0 * params["color"]["g"]
33+
blue = 1.0 * params["color"]["b"]
34+
self.SetEdgesColor(id, [red, green, blue])
3335

3436
@exportRpc(prefix + schemas_dict["size"]["rpc"])
3537
def setMeshEdgesSize(self, params):
36-
print(self.schemas_dict["size"]["rpc"], f"{params=}", flush=True)
38+
print(self.prefix + self.schemas_dict["size"]["rpc"], f"{params=}", flush=True)
3739
validate_schema(params, self.schemas_dict["size"])
3840
id = params["id"]
3941
size = bool(params["size"])

src/opengeodeweb_viewer/rpc/mesh/edges/schemas/color.json

Lines changed: 32 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,33 +5,42 @@
55
"id": {
66
"type": "string"
77
},
8-
"red": {
9-
"type": "integer",
10-
"minimum": 0,
11-
"maximum": 255
12-
},
13-
"green": {
14-
"type": "integer",
15-
"minimum": 0,
16-
"maximum": 255
17-
},
18-
"blue": {
19-
"type": "integer",
20-
"minimum": 0,
21-
"maximum": 255
22-
},
23-
"alpha": {
24-
"type": "integer",
25-
"minimum": 0,
26-
"maximum": 1
8+
"color": {
9+
"type": "object",
10+
"properties": {
11+
"r": {
12+
"type": "integer",
13+
"minimum": 0,
14+
"maximum": 255
15+
},
16+
"g": {
17+
"type": "integer",
18+
"minimum": 0,
19+
"maximum": 255
20+
},
21+
"b": {
22+
"type": "integer",
23+
"minimum": 0,
24+
"maximum": 255
25+
},
26+
"a": {
27+
"type": "number",
28+
"minimum": 0,
29+
"maximum": 1,
30+
"default": 1
31+
}
32+
},
33+
"required": [
34+
"r",
35+
"g",
36+
"b"
37+
],
38+
"additionalProperties": false
2739
}
2840
},
2941
"required": [
3042
"id",
31-
"red",
32-
"green",
33-
"blue",
34-
"alpha"
43+
"color"
3544
],
3645
"additionalProperties": false
3746
}

src/opengeodeweb_viewer/rpc/mesh/mesh_protocols.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ def __init__(self):
1818

1919
@exportRpc(prefix + schemas_dict["register"]["rpc"])
2020
def registerMesh(self, params):
21-
print(self.schemas_dict["register"]["rpc"], f"{params=}", flush=True)
21+
print(self.prefix + self.schemas_dict["register"]["rpc"], f"{params=}", flush=True)
2222
validate_schema(params, self.schemas_dict["register"])
2323
id = params["id"]
2424
file_name = params["file_name"]
@@ -33,30 +33,30 @@ def registerMesh(self, params):
3333

3434
@exportRpc(prefix + schemas_dict["deregister"]["rpc"])
3535
def deregisterMesh(self, params):
36-
print(self.schemas_dict["deregister"]["rpc"], f"{params=}", flush=True)
36+
print(self.prefix + self.schemas_dict["deregister"]["rpc"], f"{params=}", flush=True)
3737
validate_schema(params, self.schemas_dict["deregister"])
3838
id = params["id"]
3939
self.deregisterObject(id)
4040

4141
@exportRpc(prefix + schemas_dict["visibility"]["rpc"])
4242
def SetMeshVisibility(self, params):
43-
print(self.schemas_dict["visibility"]["rpc"], f"{params=}", flush=True)
43+
print(self.prefix + self.schemas_dict["visibility"]["rpc"], f"{params=}", flush=True)
4444
validate_schema(params, self.schemas_dict["visibility"])
4545
id = params["id"]
4646
visibility = bool(params["visibility"])
4747
self.SetVisibility(id, visibility)
4848

4949
@exportRpc(prefix + schemas_dict["set_opacity"]["rpc"])
5050
def setMeshOpacity(self, params):
51-
print(self.schemas_dict["set_opacity"]["rpc"], f"{params=}", flush=True)
51+
print(self.prefix + self.schemas_dict["set_opacity"]["rpc"], f"{params=}", flush=True)
5252
validate_schema(params, self.schemas_dict["set_opacity"])
5353
id = params["id"]
5454
opacity = float(params["opacity"])
5555
self.SetOpacity(id, opacity)
5656

5757
@exportRpc(prefix + schemas_dict["set_color"]["rpc"])
5858
def setMeshColor(self, params):
59-
print(self.schemas_dict["set_color"]["rpc"], f"{params=}", flush=True)
59+
print(self.prefix + self.schemas_dict["set_color"]["rpc"], f"{params=}", flush=True)
6060
validate_schema(params, self.schemas_dict["set_color"])
6161
id = params["id"]
6262
red = params["red"]

src/opengeodeweb_viewer/rpc/mesh/points/points_protocols.py

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -17,33 +17,35 @@ def __init__(self):
1717

1818
@exportRpc(prefix + schemas_dict["visibility"]["rpc"])
1919
def setMeshPointsVisibility(self, params):
20-
print(self.schemas_dict["visibility"]["rpc"], f"{params=}", flush=True)
20+
print(self.prefix + self.schemas_dict["visibility"]["rpc"], f"{params=}", flush=True)
2121
validate_schema(params, self.schemas_dict["visibility"])
22-
id = params["id"]
22+
id = str(params["id"])
2323
visibility = bool(params["visibility"])
24-
self.SetVertexVisibility(id, visibility)
24+
self.SetPointsVisibility(id, visibility)
2525

2626
@exportRpc(prefix + schemas_dict["color"]["rpc"])
27-
def setMeshPointsSize(self, params):
28-
print(self.schemas_dict["color"]["rpc"], f"{params=}", flush=True)
27+
def setMeshPointsColor(self, params):
28+
print(self.prefix + self.schemas_dict["color"]["rpc"], f"{params=}", flush=True)
2929
validate_schema(params, self.schemas_dict["color"])
30-
id = params["id"]
31-
color = params["color"]
32-
self.SetPointsColor(id, color)
30+
id = str(params["id"])
31+
red = params["color"]["r"]
32+
green = params["color"]["g"]
33+
blue = params["color"]["b"]
34+
self.SetPointsColor(id, [red, green, blue])
3335

3436
@exportRpc(prefix + schemas_dict["size"]["rpc"])
3537
def setMeshPointsSize(self, params):
36-
print(self.schemas_dict["size"]["rpc"], f"{params=}", flush=True)
38+
print(self.prefix + self.schemas_dict["size"]["rpc"], f"{params=}", flush=True)
3739
validate_schema(params, self.schemas_dict["size"])
38-
id = params["id"]
40+
id = str(params["id"])
3941
size = float(params["size"])
40-
self.SetPointSize(id, size)
42+
self.SetPointsSize(id, size)
4143

4244
@exportRpc(prefix + schemas_dict["vertex_attribute"]["rpc"])
4345
def setMeshPointsVertexAttribute(self, params):
44-
print(self.schemas_dict["vertex_attribute"]["rpc"], f"{params=}", flush=True)
46+
print(self.prefix + self.schemas_dict["vertex_attribute"]["rpc"], f"{params=}", flush=True)
4547
validate_schema(params, self.schemas_dict["vertex_attribute"])
46-
id = params["id"]
48+
id = str(params["id"])
4749
name = str(params["name"])
4850
self.setMeshVertexAttribute(id, name)
4951

src/opengeodeweb_viewer/rpc/mesh/points/schemas/color.json

Lines changed: 32 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,33 +5,42 @@
55
"id": {
66
"type": "string"
77
},
8-
"red": {
9-
"type": "integer",
10-
"minimum": 0,
11-
"maximum": 255
12-
},
13-
"green": {
14-
"type": "integer",
15-
"minimum": 0,
16-
"maximum": 255
17-
},
18-
"blue": {
19-
"type": "integer",
20-
"minimum": 0,
21-
"maximum": 255
22-
},
23-
"alpha": {
24-
"type": "integer",
25-
"minimum": 0,
26-
"maximum": 1
8+
"color": {
9+
"type": "object",
10+
"properties": {
11+
"r": {
12+
"type": "integer",
13+
"minimum": 0,
14+
"maximum": 255
15+
},
16+
"g": {
17+
"type": "integer",
18+
"minimum": 0,
19+
"maximum": 255
20+
},
21+
"b": {
22+
"type": "integer",
23+
"minimum": 0,
24+
"maximum": 255
25+
},
26+
"a": {
27+
"type": "number",
28+
"minimum": 0,
29+
"maximum": 1,
30+
"default": 1
31+
}
32+
},
33+
"required": [
34+
"r",
35+
"g",
36+
"b"
37+
],
38+
"additionalProperties": false
2739
}
2840
},
2941
"required": [
3042
"id",
31-
"red",
32-
"green",
33-
"blue",
34-
"alpha"
43+
"color"
3544
],
3645
"additionalProperties": false
3746
}

src/opengeodeweb_viewer/rpc/mesh/polygons/polygons_protocols.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,31 +17,33 @@ def __init__(self):
1717

1818
@exportRpc(prefix + schemas_dict["visibility"]["rpc"])
1919
def setMeshPolygonsVisibility(self, params):
20-
print(self.schemas_dict["visibility"]["rpc"], f"{params=}", flush=True)
20+
print(self.prefix + self.schemas_dict["visibility"]["rpc"], f"{params=}", flush=True)
2121
validate_schema(params, self.schemas_dict["visibility"])
2222
id = params["id"]
2323
visibility = bool(params["visibility"])
2424
self.SetPolygonsVisibility(id, visibility)
2525

2626
@exportRpc(prefix + schemas_dict["color"]["rpc"])
2727
def setMeshPolygonsColor(self, params):
28-
print(self.schemas_dict["color"]["rpc"], f"{params=}", flush=True)
28+
print(self.prefix + self.schemas_dict["color"]["rpc"], f"{params=}", flush=True)
2929
validate_schema(params, self.schemas_dict["color"])
3030
id = params["id"]
31-
color = bool(params["color"])
32-
self.SetPolygonsColor(id, color)
31+
red = params["color"]["r"]
32+
green = params["color"]["g"]
33+
blue = params["color"]["b"]
34+
self.SetPolygonsColor(id, [red, green, blue])
3335

3436
@exportRpc(prefix + schemas_dict["vertex_attribute"]["rpc"])
3537
def setMeshPolygonsVertexAttribute(self, params):
36-
print(self.schemas_dict["vertex_attribute"]["rpc"], f"{params=}", flush=True)
38+
print(self.prefix + self.schemas_dict["vertex_attribute"]["rpc"], f"{params=}", flush=True)
3739
validate_schema(params, self.schemas_dict["vertex_attribute"])
3840
id = params["id"]
3941
name = str(params["name"])
4042
self.setMeshVertexAttribute(id, name)
4143

4244
@exportRpc(prefix + schemas_dict["polygon_attribute"]["rpc"])
4345
def setMeshPolygonsPolygonAttribute(self, params):
44-
print(self.schemas_dict["polygon_attribute"]["rpc"], f"{params=}", flush=True)
46+
print(self.prefix + self.schemas_dict["polygon_attribute"]["rpc"], f"{params=}", flush=True)
4547
validate_schema(params, self.schemas_dict["polygon_attribute"])
4648
id = params["id"]
4749
name = str(params["name"])

0 commit comments

Comments
 (0)