/// <summary> /// Constructs an object placement rule requiring the placement volume to /// be placed a minimum distance away from other placed objects /// </summary> /// <param name="minDistance">Minimum distance from other placed objects</param> /// <returns>Constructed object placement rule</returns> public static ObjectPlacementRule Create_AwayFromOtherObjects(float minDistance) { ObjectPlacementRule rule = new ObjectPlacementRule(); rule.Type = ObjectPlacementRuleType.Rule_AwayFromOtherObjects; rule.RuleParam_Float_0 = minDistance; return(rule); }
/// <summary> /// Constructs an object placement rule requiring the placement volume to /// be placed a minimum distance away from any wall /// </summary> /// <param name="minDistance">Minimum distance from a wall</param> /// <param name="minWallHeight">Minimum height of a wall to be considered by this rule</param> /// <returns>Constructed object placement rule</returns> public static ObjectPlacementRule Create_AwayFromWalls(float minDistance, float minWallHeight = 0.0f) { ObjectPlacementRule rule = new ObjectPlacementRule(); rule.Type = ObjectPlacementRuleType.Rule_AwayFromWalls; rule.RuleParam_Float_0 = minDistance; rule.RuleParam_Float_1 = minWallHeight; return(rule); }
/// <summary> /// Constructs an object placement rule requiring the placement volume to /// be placed a minimum distance away from the specified position. /// </summary> /// <param name="position">Defines the center position for the center of the invalid placement space.</param> /// <param name="minDistance">Defines the radius of the invalid placement space.</param> /// <returns>Constructed object placement rule</returns> public static ObjectPlacementRule Create_AwayFromPosition(Vector3 position, float minDistance) { ObjectPlacementRule rule = new ObjectPlacementRule(); rule.Type = ObjectPlacementRuleType.Rule_AwayFromPosition; rule.RuleParam_Vec3_0 = position; rule.RuleParam_Float_0 = minDistance; return(rule); }
/// <summary> /// Constructs an object placement rule requiring the placement volume to /// be placed a minimum distance away from other placed objects /// </summary> /// <param name="minDistance">Minimum distance from other placed objects</param> /// <returns>Constructed object placement rule</returns> public static ObjectPlacementRule Create_AwayFromOtherObjects(float minDistance) { ObjectPlacementRule rule = new ObjectPlacementRule(); rule.Type = ObjectPlacementRuleType.Rule_AwayFromOtherObjects; rule.RuleParam_Float_0 = minDistance; return rule; }
/// <summary> /// Constructs an object placement rule requiring the placement volume to /// be placed a minimum distance away from any wall /// </summary> /// <param name="minDistance">Minimum distance from a wall</param> /// <param name="minWallHeight">Minimum height of a wall to be considered by this rule</param> /// <returns>Constructed object placement rule</returns> public static ObjectPlacementRule Create_AwayFromWalls(float minDistance, float minWallHeight = 0.0f) { ObjectPlacementRule rule = new ObjectPlacementRule(); rule.Type = ObjectPlacementRuleType.Rule_AwayFromWalls; rule.RuleParam_Float_0 = minDistance; rule.RuleParam_Float_1 = minWallHeight; return rule; }
/// <summary> /// Constructs an object placement rule requiring the placement volume to /// be placed a minimum distance away from the specified position. /// </summary> /// <param name="position">Defines the center position for the center of the invalid placement space.</param> /// <param name="minDistance">Defines the radius of the invalid placement space.</param> /// <returns>Constructed object placement rule</returns> public static ObjectPlacementRule Create_AwayFromPosition(Vector3 position, float minDistance) { ObjectPlacementRule rule = new ObjectPlacementRule(); rule.Type = ObjectPlacementRuleType.Rule_AwayFromPosition; rule.RuleParam_Vec3_0 = position; rule.RuleParam_Float_0 = minDistance; return rule; }