cwapi3d / cwapi3dpython

Cadwork Python Interface
https://docs.cadwork.com/projects/cwapi3dpython
MIT License
21 stars 8 forks source link

Feature Request: Connector Axis Controller additional methods #98

Open sam-snodgrass opened 10 months ago

sam-snodgrass commented 10 months ago

This is a relatively large issue that highlights functionality that I would like to see in the API to match that of the controller axes in the application.

Controller Axis section

  1. Connector_axis_controller.get_standard_connector_list() -> list[int|str]

    • Return list of standard connector names, match implementation in C++
  2. Connector_axis_controller.get_bolt_diameter(connector_id) -> float

    • Return diameter (float) of connector, match implementation in C++
  3. Connector_axis_controller.get_catalog_connector_list -> list[int|str]

    • Return a list of catalog connector ids and names
  4. Connector_axis_controller.import_from_file

    • Import from file, same implementation in C++
  5. Connector_axis_controller.set_connector(connector_axis_id, catalog_connector_id) -> connector_id

    • Set a connector to the specific axis, same result as using this menu from the application, adds the selected connector to the axis at the start point.
    • Standard connector methods must function with catalog connectors as well. i.e. ca.set_bolt_length, ca.set_drilling_diameter, ca.set_section_drilling_diameter, etc… image

Counterbore section

  1. Get_counter_bore_connector_list() -> list[int|str]

    • Return a list of available counterbore connector ids and names
  2. Add_counterbore_connector_to_axis(counterbore_connector_id, connector_axis_id, start_point, end_point)

    • My suggestion for this is to select 2 points along the length of the connector axis and the counterbore_connector will generate between them, the way it works in the application is to select a border between zones and then you can add it there and modify it with diameter and depth settings.
  3. set_depth(counterbore_connector_id, depth)

  4. set_depth_automatic(counterbore_connector_id)

  5. set_diameter(counterbore_connector_id, diameter)

  6. set_diameter_automatic(counterbore_connector_id)

  7. set_conic(counterbore_connector_id)

  8. duplicate_to_end()

    image
  9. Connector_axis_controller.get_connectors_inside_axis(connector_axis_id)

    • Returns a list of all the connectors and counterbore_connectors inside of the axis
github-actions[bot] commented 7 months ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 3 days.

sam-snodgrass commented 6 months ago

Is it possible to reopen this issue?

kdurando commented 1 month ago

functionality that I would like to see in the API to match that of the controller axes in the application

@jspaquet I was discussing with our modeler today, and I just want to clarify that, at the best of our knowledge, number 7 above (And possibly 8 to 12) :

  1. Add_counterbore_connector_to_axis(counterbore_connector_id, connector_axis_id, start_point, end_point)

My suggestion for this is to select 2 points along the length of the connector axis and the counterbore_connector will generate between them, the way it works in the application is to select a border between zones and then you can add it there and modify it with diameter and depth settings.

is not a feature yet possible with the app. So our need is not just a match of the app, as stated by Samuel, but rather extend to the implementation of the feature.