コード例 #1
0
        protected Tuple <Matrix3D, Matrix3D> GetPreMatrix(Table.Table table, Origin origin, bool asRightHanded)
        {
            switch (origin)
            {
            case Origin.Original:
                return(asRightHanded
                                                ? new Tuple <Matrix3D, Matrix3D>(Matrix3D.RightHanded, null)
                                                : new Tuple <Matrix3D, Matrix3D>(Matrix3D.Identity, null));

            case Origin.Global:
                var m = GetTransformationMatrix(table);
                return(asRightHanded
                                                ? new Tuple <Matrix3D, Matrix3D>(m.Item1.Multiply(Matrix3D.RightHanded), m.Item2?.Multiply(Matrix3D.RightHanded))
                                                : m);

            default:
                throw new ArgumentOutOfRangeException(nameof(origin), origin, "Unknown origin " + origin);
            }
        }
コード例 #2
0
 protected abstract float BaseHeight(Table.Table table);