Ejemplo n.º 1
0
        public SurfaceStyling(IEnumerable <SurfaceStyle> styles)
        {
            foreach (var style in styles)
            {
                switch (style.Side)
                {
                case IfcSurfaceSide.POSITIVE:
                    FrontFaceStyle = style;
                    break;

                case IfcSurfaceSide.NEGATIVE:
                    BackFaceStyle = style;
                    break;

                case IfcSurfaceSide.BOTH:
                    FrontFaceStyle = style;
                    BackFaceStyle  = style;
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }
            }
        }
Ejemplo n.º 2
0
 static SurfaceStyle()
 {
     NullSurfaceStyle = new SurfaceStyle();
 }
Ejemplo n.º 3
0
 /// <summary>
 /// returns the back face if defined or the default
 /// </summary>
 /// <param name="defaultStyle"></param>
 /// <returns></returns>
 public SurfaceStyle BackOrDefault(SurfaceStyle defaultStyle = null)
 {
     return(BackFaceStyle ?? defaultStyle);
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Returns the front face if not nul or the back face if not null or the default
 /// </summary>
 /// <param name="defaultStyle"></param>
 /// <returns></returns>
 public SurfaceStyle FrontBackOrDefault(SurfaceStyle defaultStyle = null)
 {
     return(FrontFaceStyle ?? BackFaceStyle ?? defaultStyle);
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Sets the front and back material to the style
 /// </summary>
 /// <param name="frontFaceStyle"></param>
 public SurfaceStyling(SurfaceStyle frontFaceStyle)
 {
     FrontFaceStyle = frontFaceStyle;
     BackFaceStyle  = frontFaceStyle;
 }