Exemple #1
0
        private void Build()
        {
            if (builder == null)
            {
                return;
            }

            if (draft.parent == null)
            {
                return;
            }

            Utils.DeleteChilds(draft.parent);

            for (int y = 0; y < repeatUp; y++)
            {
                for (int x = 0; x < repeatRight; x++)
                {
                    var elementDraft = ElementDraft.Create(draft);
                    elementDraft.Parse(draft.parent);

                    elementDraft.pivot = elementDraft.pivot
                                         + elementDraft.right * elementDraft.length * x
                                         + elementDraft.up * elementDraft.height * y;

                    (builder as IElementBuilder).Build(elementDraft);

                    if (isRunDecorators)
                    {
                        Utils.RunDecorators(elementDraft.parent);
                    }
                }
            }
        }
        private static ElementDraft CreateElementDraft(ColumnGenerationSettings settings)
        {
            var result = ElementDraft.Create();

            result.length = settings.length;
            result.height = settings.height;

            result.isHorizontalMrror = settings.isHorizontalMrror;
            result.isVerticalMirror  = false;
            result.forwardScale      = settings.forwardScale;

            result.parent = settings.parent;
            result.pivot  = settings.pivot;

            result.up    = settings.up;
            result.right = settings.right;

            return(result);
        }