Example #1
0
        private bool IsElementValid()
        {
            bool HasColor = DictProperties.ContainsKey("red") && DictProperties.ContainsKey("green") &&
                            DictProperties.ContainsKey("blue") && DictProperties.ContainsKey("alpha");

            return(HasColor && CheckValueDataTypeEqual(new List <string> {
                "red", "green", "blue", "alpha"
            }, PlyProperty.ENumFormat.nf_uchar));
        }
Example #2
0
        private bool IsElementValid()
        {
            bool isValid      = DictProperties.Count == 1 && DictProperties.ContainsKey("vertex_indices");
            var  listProperty = (DictProperties["vertex_indices"] as PlyListProperty);

            isValid = isValid &&
                      (listProperty.ValueNumFormat == PlyProperty.ENumFormat.nf_int ||
                       listProperty.ValueNumFormat == PlyProperty.ENumFormat.nf_uint);
            isValid = isValid && (listProperty.CountNumFormat == PlyProperty.ENumFormat.nf_uchar);

            return(isValid);
        }
Example #3
0
        public void GetCoordinateTransalte(out int[] coordinate, out int[] sign)
        {
            coordinate = new int[3];
            sign       = new int[3];
            for (int i = 0; i < coordinate.Length; ++i)
            {
                coordinate[i] = i;
                sign[i]       = 1;
            }

            if (!IsValid)
            {
                return;
            }

            if (DictProperties.ContainsKey("x_inner"))
            {
                string value = (DictProperties["x_inner"] as PlyMultiProperty).Value;
                if (value[0] == '-')
                {
                    sign[0] = -1;
                    value   = value.Substring(1);
                }
                coordinate[0] = _axises[value];
            }

            if (DictProperties.ContainsKey("y_inner"))
            {
                string value = (DictProperties["y_inner"] as PlyMultiProperty).Value;
                if (value[0] == '-')
                {
                    sign[1] = -1;
                    value   = value.Substring(1);
                }
                coordinate[1] = _axises[value];
            }

            if (DictProperties.ContainsKey("z_inner"))
            {
                string value = (DictProperties["z_inner"] as PlyMultiProperty).Value;
                if (value[0] == '-')
                {
                    sign[2] = -1;
                    value   = value.Substring(1);
                }
                coordinate[2] = _axises[value];
            }
        }
Example #4
0
        public PlyVertexElement(IList <string> headerUnparsed, PlyHeader header) : base("vertex")
        {
            _header = header;
            if (!ParseElementInfo(headerUnparsed))
            {
                IsValid = false;
                return;
            }

            HasPosition = DictProperties.ContainsKey("x") && DictProperties.ContainsKey("y") && DictProperties.ContainsKey("z");
            HasNormal   = DictProperties.ContainsKey("nx") && DictProperties.ContainsKey("ny") && DictProperties.ContainsKey("nz");
            HasColor    = DictProperties.ContainsKey("red") && DictProperties.ContainsKey("green") &&
                          DictProperties.ContainsKey("blue") && DictProperties.ContainsKey("alpha");


            IsValid = IsValid && IsElementValid();
        }
Example #5
0
 public bool IsElementValid()
 {
     return(DictProperties.Count == 2 && DictProperties.ContainsKey("vertex1") && DictProperties.ContainsKey("vertex2"));
 }