public void DrawConstraint(List <ADBRuntimeConstraint> constraints, Mono.ColliderCollisionType colliderCollisionType) { if (constraints == null) { return; } for (int i = 0; i < constraints.Count; i++) { constraints[i].OnDrawGizmos(colliderCollisionType == Mono.ColliderCollisionType.Constraint || colliderCollisionType == Mono.ColliderCollisionType.Both); } }
internal void OnDrawGizmos(Mono.ColliderCollisionType colliderCollisionType) { Gizmos.color = isAllowComputeOtherConstraint ? Color.grey: Color.black; if (pointRead.radius > 0.005f && (colliderCollisionType == Mono.ColliderCollisionType.Point || colliderCollisionType == Mono.ColliderCollisionType.Both)) { Matrix4x4 temp = Gizmos.matrix; Gizmos.matrix = Matrix4x4.TRS(trans.position, Quaternion.FromToRotation(Vector3.up, pointRead.initialLocalPosition) * trans.rotation, trans.lossyScale); Gizmos.DrawWireSphere(Vector3.zero, pointRead.radius); Gizmos.matrix = temp; } else { Gizmos.DrawSphere(trans.position, 0.005f);//OYM:都说了画点用的 } }
public void OnDrawGizmos(Mono.ColliderCollisionType colliderCollisionType) { if (!aDBSetting.isDebugDraw) { return; } foreach (var point in allNodeList) { point.OnDrawGizmos(colliderCollisionType); } if (aDBSetting.isComputeStructuralVertical) { DrawConstraint(constraintsStructuralVertical, colliderCollisionType); } if (aDBSetting.isComputeStructuralHorizontal) { DrawConstraint(constraintsStructuralHorizontal, colliderCollisionType); } if (aDBSetting.isComputeShear) { DrawConstraint(constraintsShear, colliderCollisionType); } if (aDBSetting.isComputeCircumference) { DrawConstraint(constraintsCircumference, colliderCollisionType); } if (aDBSetting.isComputeBendingHorizontal) { DrawConstraint(constraintsBendingHorizontal, colliderCollisionType); } if (aDBSetting.isComputeBendingVertical) { DrawConstraint(constraintsBendingVertical, colliderCollisionType); } }