示例#1
0
        private void DrawEntity(Graphics graphics, ProjectedEntity entity, CadColor?layerColor, Vector offset = default(Vector))
        {
            switch (entity.Kind)
            {
            case EntityKind.Line:
                DrawEntity(graphics, (ProjectedLine)entity, layerColor, offset);
                break;

            case EntityKind.Circle:
            case EntityKind.Ellipse:
                DrawEntity(graphics, (ProjectedCircle)entity, layerColor, offset);
                break;

            case EntityKind.Text:
                DrawEntity(graphics, (ProjectedText)entity, layerColor, offset);
                break;

            case EntityKind.Aggregate:
                var ag = (ProjectedAggregate)entity;
                foreach (var child in ag.Children)
                {
                    DrawEntity(graphics, child, layerColor, offset + ag.Location);
                }
                break;

            default:
                break;
            }
        }
示例#2
0
        public static XElement ToXElement(this ProjectedEntity entity)
        {
            switch (entity.Kind)
            {
            case EntityKind.Line:
                return(ToXElement((ProjectedLine)entity));

            case EntityKind.Arc:
                return(ToXElement((ProjectedArc)entity));

            case EntityKind.Circle:
                return(ToXElement((ProjectedCircle)entity));

            case EntityKind.Text:
                return(ToXElement((ProjectedText)entity));

            case EntityKind.Aggregate:
                return(ToXElement((ProjectedAggregate)entity));

            default:
                return(null);
            }
        }
示例#3
0
        public void CanQueryWithNestedLocalVarsWithNullTarget()
        {
            ProjectedEntity someObj = null;

            Should.Throw <NullReferenceException>(() => Query <Entity>().Where(x => x.Property == someObj.Property).Translate());
        }