Conversation
Change return type of method FmIsPositionedBase::isRotatable() to char. This is used in the overridden FmTriad method, which returns 3 if the triad is a multi-master triad (for prismatic or cylindric joints), to signal that this triad is allowed to rotate about the local Z-axis of the owning multi-master joint.
When creating a line joint between existing triads, then enforce the reuse of matching line object, or cancel the create operation. Also cancel if any of the selected end triads already are used by other line objects. This is illegal due to conflicting orientation.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When creating a line joint (prismatic or cylindric) between existing triads, one of the end triads can not already be member of an existing line object of another joint. Neither can both end triads be member of two different line objects. Only if the two end triads matches the end triads of the same existing line it is allowed, and that line is then reused without the option to decline it.
This is to ensure that the multi-master triads will not have conflicting orientations if used by several multi-master joints.
Also extending the
FmTriad::isRotatable()method, to detect whether a multi-master triad can rotate about the local Z-axis of the joint in the modelling stage.