예제 #1
0
        public IRenderableProduction Clone()
        {
            var clone = new SelectProduction(ParentProduction)
            {
                Faces               = Faces,
                FaceBreadth         = FaceBreadth,
                IsAbsolute          = IsAbsolute,
                SelectandProduction = (RegistrarProduction)SelectandProduction.Clone(),
                Name       = Name,
                IsOccluder = IsOccluder
            };

            return(clone);
        }
예제 #2
0
        public IList <IRenderableProduction> Expand()
        {
            if (ParentProduction == null || ParentProduction.Scope == null)
            {
                Debug.Log(string.Format("Found a null parent production while trying to expand select: {0}", Name));
            }

            var expansion = new List <IRenderableProduction>();

            var scopes = ParentProduction.Scope.Select(this);

            foreach (var scope in scopes)
            {
                SelectandProduction.Scope = scope;
                expansion.Add(SelectandProduction.Clone());
            }

            return(expansion);
        }