コード例 #1
0
    public override Auxiliary GenerateAuxiliary(Geometry geometry, FormInput formInput)
    {
        bool valid = ValidateInput(geometry, formInput);

        if (!valid)
        {
            return(null);
        }

        if (!(geometry is ResolvedBody))
        {
            return(null);
        }

        ResolvedBody resolvedBody = (ResolvedBody)geometry;

        if (!resolvedBody.isSpinned || resolvedBody.isSpread)
        {
            return(null);
        }

        SpreadAuxiliary auxiliary = new SpreadAuxiliary();

        auxiliary.InitWithGeometry(geometry);
        if (!auxiliary.CanSpread())
        {
            return(null);
        }
        auxiliary.AddPlaneGraph();

        return(auxiliary);
    }
コード例 #2
0
    public SpreadAuxiliaryState(Tool tool, Auxiliary auxiliary, Geometry geometry) : base(tool, auxiliary)
    {
        if (auxiliary is SpreadAuxiliary)
        {
            this.auxiliary = (SpreadAuxiliary)auxiliary;
        }

        this.geometry = geometry;
    }