Model.hm_compareentitiestranslate#

Model.hm_compareentitiestranslate(source_entities, target_entities, tolerance, vec_x, vec_y, vec_z, distance, steps, result_type=1, review_results=True)#

Generates comparison results for entities translated along a vector. This may find multiple matches, depending on the requested options. This must be preceded by a call to Model.hm_compareinit().

These results can then be queried using hm_compareget APIs, or written to a file using hm_comparewrite APIs.

Parameters:
  • source_entities (Collection) – The collection containing the source entities. Valid entities are surfaces or elements.

  • target_entities (Collection) – The collection containing the target entities. Valid entities are surfaces or elements.

  • tolerance (double) – The tolerance value to use for the comparison.

  • vec_x (double) – X-coordinate of translation direction.

  • vec_y (double) – Y-coordinate of translation direction.

  • vec_z (double) – Z-coordinate of translation direction.

  • distance (double) – The translation distance to use for searching for matches.

  • steps (int) – The number of steps to consider. This dictates how many increments of distance are searched for matches. For example, if distance is 45 and steps is 3, the distances 45, 90 and 135 will be searched. Must be ≥ 1.

  • result_type (int) –

    SURFS to SURFS

    SURFS to ELEMS

    ELEMS to SURFS

    ELEMS to ELEMS

    0 - Basic

    Matched (paired)

    Unmatched

    Matched (paired)

    Unmatched

    Matched

    Unmatched

    1 - Full (default)

    Matched (paired)

    Overlapped

    Intersected

    Unmatched

    Matched (paired)

    Overlapped

    Intersected

    Unmatched

    Matched

    Overlapped

    Intersected

    Unmatched

    2 - Detailed

    Matched (paired)

    Overlapped (paired)

    Intersected (paired)

    Unmatched

    Matched (paired)

    Overlapped (paired)

    Intersected (paired)

    Unmatched

    Matched

    Overlapped (paired)

    Intersected (paired)

    Unmatched

  • review_results (bool) –

    False - Do not automatically show the graphical comparison results after execution.

    True - Automatically show the graphical comparison results after execution (default). This is cleared upon a call to Model.hm_compareend.

Returns:

Example#

Write the detailed comparison results file to “ C:/temp / my_compare.txt “ for the translational comparison use a distance of 45 and 6 steps , of surfs with IDs 1 - 20 and 101 - 120 along the y - direction#
import hm
import hm.entities as ent

model = hm.Model()

surfs1 = hm.Collection(model, ent.Surface, list(range(1, 21)))
surfs2 = hm.Collection(model, ent.Surface, list(range(101, 121)))

model.hm_compareinit()

model.hm_compareentitiestranslate(
    source_entities=surfs1,
    target_entities=surfs2,
    tolerance=0.1,
    vec_x=0.0,
    vec_y=1.0,
    vec_z=0.0,
    distance=45.0,
    steps=6,
    result_type=2,
    review_results=False,
)

model.hm_comparewriteresults(
    filename="C:/temp/my_compare.txt", source_component_id=0, target_component_id=0
)

model.hm_compareend()