diff --git a/src/ansys/api/acp/VERSION b/src/ansys/api/acp/VERSION index d8f69e2..9e557de 100644 --- a/src/ansys/api/acp/VERSION +++ b/src/ansys/api/acp/VERSION @@ -1 +1 @@ -0.1.0.dev3 +0.1.0.dev4 diff --git a/src/ansys/api/acp/v0/solid_model.proto b/src/ansys/api/acp/v0/solid_model.proto new file mode 100644 index 0000000..da86fe6 --- /dev/null +++ b/src/ansys/api/acp/v0/solid_model.proto @@ -0,0 +1,102 @@ +syntax = "proto3"; +package ansys.api.acp.v0.solid_model; + +import "ansys/api/acp/v0/base.proto"; +import "ansys/api/acp/v0/enum_types.proto"; + +enum ExtrusionMethodType { + ANALYSIS_PLY_WISE = 0; + MONOLITHIC = 1; + PRODUCTION_PLY_WISE = 2; + MODELING_PLY_WISE = 3; + SPECIFY_THICKNESS = 4; + MATERIAL_WISE = 5; + USER_DEFINED = 6; + SANDWICH_WISE = 7; +} + +enum DropOffType { + INSIDE_PLY = 0; + OUTSIDE_PLY = 1; +} + +enum OffsetDirectionType { + SHELL_NORMAL = 0; + SURFACE_NORMAL = 1; + // DISTORTION_CONTROLLED -> not supported at the moment +} + +message DropOffSettings { + DropOffType drop_off_type = 1; + bool disable_dropoffs_on_bottom = 2; + repeated base.ResourcePath dropoff_disabled_on_bottom_sets = 3; + bool disable_dropoffs_on_top = 4; + repeated base.ResourcePath dropoff_disabled_on_top_sets = 5; + bool connect_butt_joined_plies = 6; +} + +message ExportSettings { + bool use_default_section_index = 1; + int32 section_index = 2; + bool use_default_coordinate_system_index = 3; + int32 coordinate_system_index = 4; + bool use_default_material_index = 5; + int32 material_index = 6; + bool use_default_node_index = 7; + int32 node_index = 8; + bool use_default_element_index = 9; + int32 element_index = 10; + bool use_solsh_elements = 11; + bool write_degenerated_elements = 12; + bool drop_hanging_nodes = 13; + bool use_solid_model_prefix = 14; + bool transfer_all_sets = 15; + repeated base.ResourcePath transferred_element_sets = 16; + repeated base.ResourcePath transferred_edge_sets = 17; +} + +message Properties { + // general properties + enum_types.StatusType status = 1; // read only + bool locked = 2; // read only + bool active = 3; + repeated base.ResourcePath element_sets = 4; + ExtrusionMethodType extrusion_method = 5; + double max_element_thickness = 6; + repeated base.ResourcePath ply_group_pointers = 7; + OffsetDirectionType offset_direction = 8; + base.ResourcePath drop_off_material = 9; + base.ResourcePath cut_off_material = 10; + bool delete_bad_elements = 11; + double warping_limit = 12; + double minimum_volume = 13; + // drop off properties + DropOffSettings drop_off_settings = 14; + // export properties + ExportSettings export_settings = 15; +} + +message ObjectInfo { + base.BasicInfo info = 1; + Properties properties = 2; +} + +message ListReply { repeated ObjectInfo objects = 1; } + +message CreateRequest { + base.CollectionPath collection_path = 1; + string name = 2; + Properties properties = 3; +} + +service ObjectService { + rpc List(base.ListRequest) returns (ListReply); + + rpc Get(base.GetRequest) returns (ObjectInfo); + + rpc Put(ObjectInfo) returns (ObjectInfo); + + rpc Delete(base.DeleteRequest) returns (base.Empty); + + rpc Create(CreateRequest) returns (ObjectInfo); +}