From dc3fea3eddb48f55cc2b80b341a484e331f8a9a3 Mon Sep 17 00:00:00 2001 From: Jan von Rickenbach Date: Thu, 9 Jun 2022 16:30:35 +0200 Subject: [PATCH 1/2] Add element_set protos --- src/ansys/api/acp/v0/element_set.proto | 46 ++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/ansys/api/acp/v0/element_set.proto diff --git a/src/ansys/api/acp/v0/element_set.proto b/src/ansys/api/acp/v0/element_set.proto new file mode 100644 index 0000000..9b71def --- /dev/null +++ b/src/ansys/api/acp/v0/element_set.proto @@ -0,0 +1,46 @@ +syntax = "proto3"; +package ansys.api.acp.v0; + +import "ansys/api/acp/v0/base.proto"; + +message ElementSetRequest { + ResourcePath resource_path = 1; + // TODO: add a 'view' that determines which parts are returned +} + +message ElementSetReply { + BasicInfo info = 1; +} + +message PutElementSetRequest { + BasicInfo info = 1; +} + +message DeleteElementSetRequest { + BasicInfo info = 1; +} + +message ListElementSetsRequest { + CollectionPath collection_path = 1; +} + +message ListElementSetsReply { + repeated ElementSetReply element_sets = 1; +} + +message CreateElementSetRequest { + CollectionPath collection_path = 1; + string name = 2; +} + +service ElementSet { + rpc List(ListElementSetsRequest) returns (ListElementSetsReply); + + rpc Get(ElementSetRequest) returns (ElementSetReply); + + rpc Put(PutElementSetRequest) returns (ElementSetReply); + + rpc Delete(DeleteElementSetRequest) returns (Empty); + + rpc Create(CreateElementSetRequest) returns (ElementSetReply); +} From eb2b3d01fd1c45fb2252e46d0958f3f14a81e689 Mon Sep 17 00:00:00 2001 From: Jan von Rickenbach Date: Thu, 16 Jun 2022 13:30:13 +0200 Subject: [PATCH 2/2] Properties for element sets --- .gitignore | 3 +++ src/ansys/api/acp/v0/array_types.proto | 12 ++++++++++++ src/ansys/api/acp/v0/element_set.proto | 15 ++++++++++++++- src/ansys/api/acp/v0/enum_types.proto | 9 +++++++++ src/ansys/api/acp/v0/rosette.proto | 24 +++++++++++++++++++++++- 5 files changed, 61 insertions(+), 2 deletions(-) create mode 100644 src/ansys/api/acp/v0/array_types.proto create mode 100644 src/ansys/api/acp/v0/enum_types.proto diff --git a/.gitignore b/.gitignore index 2227357..71feede 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,6 @@ MANIFEST # autogenerated Python code *pb2*.py *pb2*.pyi + +#Pycharm settings +.idea diff --git a/src/ansys/api/acp/v0/array_types.proto b/src/ansys/api/acp/v0/array_types.proto new file mode 100644 index 0000000..83b9849 --- /dev/null +++ b/src/ansys/api/acp/v0/array_types.proto @@ -0,0 +1,12 @@ +syntax = "proto3"; +package ansys.api.acp.v0.array_types; + +message DoubleArray { + repeated int64 shape = 1 [packed=true]; + repeated double data = 2 [packed=true]; +} + +message IntArray { + repeated int64 data = 1 [packed=true]; + repeated int64 shape = 2 [packed=true]; +} \ No newline at end of file diff --git a/src/ansys/api/acp/v0/element_set.proto b/src/ansys/api/acp/v0/element_set.proto index 9b71def..02563a5 100644 --- a/src/ansys/api/acp/v0/element_set.proto +++ b/src/ansys/api/acp/v0/element_set.proto @@ -1,19 +1,30 @@ syntax = "proto3"; -package ansys.api.acp.v0; +package ansys.api.acp.v0.element_set; import "ansys/api/acp/v0/base.proto"; +import "ansys/api/acp/v0/array_types.proto"; +import "ansys/api/acp/v0/enum_types.proto"; message ElementSetRequest { ResourcePath resource_path = 1; // TODO: add a 'view' that determines which parts are returned } +message ElementSetProperties { + enum_types.StatusType status = 1; + bool locked = 2; + bool middle_offset = 3; + array_types.IntArray element_labels = 4; +} + message ElementSetReply { BasicInfo info = 1; + ElementSetProperties properties = 2; } message PutElementSetRequest { BasicInfo info = 1; + ElementSetProperties properties = 2; } message DeleteElementSetRequest { @@ -31,6 +42,8 @@ message ListElementSetsReply { message CreateElementSetRequest { CollectionPath collection_path = 1; string name = 2; + ElementSetProperties properties = 3; + } service ElementSet { diff --git a/src/ansys/api/acp/v0/enum_types.proto b/src/ansys/api/acp/v0/enum_types.proto new file mode 100644 index 0000000..8623c94 --- /dev/null +++ b/src/ansys/api/acp/v0/enum_types.proto @@ -0,0 +1,9 @@ +syntax = "proto3"; +package ansys.api.acp.v0.enum_types; + +//the initializers are different in the backend but here it has to be zero-based +enum StatusType { + UNKNOWN = 0; + UPTODATE = 1; + NOTUPTODATE = 2; +} \ No newline at end of file diff --git a/src/ansys/api/acp/v0/rosette.proto b/src/ansys/api/acp/v0/rosette.proto index 45c1260..ae41531 100644 --- a/src/ansys/api/acp/v0/rosette.proto +++ b/src/ansys/api/acp/v0/rosette.proto @@ -1,18 +1,39 @@ syntax = "proto3"; -package ansys.api.acp.v0; +package ansys.api.acp.v0.rosette; import "ansys/api/acp/v0/base.proto"; +import "ansys/api/acp/v0/enum_types.proto"; +import "ansys/api/acp/v0/array_types.proto"; + +enum Type { + PARALLEL = 0; + RADIAL = 1; + CYLINDRICAL = 2; + SPHERICAL = 3; + EDGE_WISE = 4; +} message RosetteRequest { ResourcePath resource_path = 1; } +message RosetteProperties { + enum_types.StatusType status = 1; + bool locked = 2; + Type rosette_type = 3; + array_types.DoubleArray origin = 4; + array_types.DoubleArray dir1 = 5; + array_types.DoubleArray dir2 = 6; +} + message RosetteReply { BasicInfo info = 1; + RosetteProperties properties = 2; } message PutRosetteRequest { BasicInfo info = 1; + RosetteProperties properties = 2; } message DeleteRosetteRequest { @@ -30,6 +51,7 @@ message ListRosettesReply { message CreateRosetteRequest { CollectionPath collection_path = 1; string name = 2; + RosetteProperties properties = 3; } service Rosette {