fix #2473
This commit is contained in:
parent
f8fcc025ea
commit
f7b8ca6857
|
|
@ -15,7 +15,7 @@ internal static class RevisionClass
|
||||||
public const string Major = "3";
|
public const string Major = "3";
|
||||||
public const string Minor = "8";
|
public const string Minor = "8";
|
||||||
public const string Build = "0";
|
public const string Build = "0";
|
||||||
public const string Revision = "2886";
|
public const string Revision = "2891";
|
||||||
|
|
||||||
public const string MainVersion = Major + "." + Minor;
|
public const string MainVersion = Major + "." + Minor;
|
||||||
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
%COREVERSION%=0
|
|
||||||
%REVISION%=2886
|
|
||||||
%MINOR%=8
|
%MINOR%=8
|
||||||
|
%REVISION%=2891
|
||||||
|
%COREVERSION%=0
|
||||||
%MAJOR%=3
|
%MAJOR%=3
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
3.8.0.2886
|
3.8.0.2891
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
!define VERSION '3.8.0.2886'
|
!define VERSION '3.8.0.2891'
|
||||||
|
|
|
||||||
|
|
@ -3211,65 +3211,63 @@ procedure ShowObjects;
|
||||||
//>> Graph3D: функции для создания 3D-объектов # Graph3D functions for creation 3D-objects
|
//>> Graph3D: функции для создания 3D-объектов # Graph3D functions for creation 3D-objects
|
||||||
// -----------------------------------------------------
|
// -----------------------------------------------------
|
||||||
/// Возвращает сферу с центром в точке (x, y, z) радиуса Radius
|
/// Возвращает сферу с центром в точке (x, y, z) радиуса Radius
|
||||||
function Sphere(x, y, z, Radius: real; m: Material): SphereT;
|
function Sphere(x, y, z, Radius: real; m: Material := nil): SphereT;
|
||||||
/// Возвращает сферу с центром в точке (x, y, z) радиуса Radius
|
|
||||||
function Sphere(x, y, z, Radius: real): SphereT;
|
|
||||||
/// Возвращает сферу с центром в точке center радиуса Radius
|
/// Возвращает сферу с центром в точке center радиуса Radius
|
||||||
function Sphere(center: Point3D; Radius: real; m: Material := nil): SphereT;
|
function Sphere(center: Point3D; Radius: real; m: Material := nil): SphereT;
|
||||||
/// Возвращает эллипсоид с центром в точке (x, y, z) и радиусами RadiusX, RadiusY, RadiusZ
|
/// Возвращает эллипсоид с центром в точке (x, y, z) и радиусами RadiusX, RadiusY, RadiusZ
|
||||||
function Ellipsoid(x, y, z, RadiusX, RadiusY, RadiusZ: real; m: Material := DefaultMaterial): EllipsoidT;
|
function Ellipsoid(x, y, z, RadiusX, RadiusY, RadiusZ: real; m: Material := nil): EllipsoidT;
|
||||||
/// Возвращает эллипсоид с центром в точке center и радиусами RadiusX, RadiusY, RadiusZ
|
/// Возвращает эллипсоид с центром в точке center и радиусами RadiusX, RadiusY, RadiusZ
|
||||||
function Ellipsoid(center: Point3D; RadiusX, RadiusY, RadiusZ: real; m: Material := DefaultMaterial): EllipsoidT;
|
function Ellipsoid(center: Point3D; RadiusX, RadiusY, RadiusZ: real; m: Material := nil): EllipsoidT;
|
||||||
/// Возвращает куб с центром в точке (x, y, z) и длиной стороны SideLength
|
/// Возвращает куб с центром в точке (x, y, z) и длиной стороны SideLength
|
||||||
function Cube(x, y, z, SideLength: real; m: Material := DefaultMaterial): CubeT;
|
function Cube(x, y, z, SideLength: real; m: Material := nil): CubeT;
|
||||||
/// Возвращает куб с центром в точке center и длиной стороны SideLength
|
/// Возвращает куб с центром в точке center и длиной стороны SideLength
|
||||||
function Cube(center: Point3D; SideLength: real; m: Material := DefaultMaterial): CubeT;
|
function Cube(center: Point3D; SideLength: real; m: Material := nil): CubeT;
|
||||||
/// Возвращает паралеллепипед с центром в точке (x, y, z) и размерами SizeX, SizeY, SizeZ
|
/// Возвращает паралеллепипед с центром в точке (x, y, z) и размерами SizeX, SizeY, SizeZ
|
||||||
function Box(x, y, z, SizeX, SizeY, SizeZ: real; m: Material := DefaultMaterial): BoxT;
|
function Box(x, y, z, SizeX, SizeY, SizeZ: real; m: Material := nil): BoxT;
|
||||||
/// Возвращает паралеллепипед с центром в точке center и размерами SizeX, SizeY, SizeZ
|
/// Возвращает паралеллепипед с центром в точке center и размерами SizeX, SizeY, SizeZ
|
||||||
function Box(center: Point3D; sz: Size3D; m: Material := DefaultMaterial): BoxT;
|
function Box(center: Point3D; sz: Size3D; m: Material := nil): BoxT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz), диаметра Diameter и длиной наконечника HeadLength
|
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz), диаметра Diameter и длиной наконечника HeadLength
|
||||||
function Arrow(x, y, z, vx, vy, vz, Diameter, HeadLength: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(x, y, z, vx, vy, vz, Diameter, HeadLength: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz), диаметра Diameter
|
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz), диаметра Diameter
|
||||||
function Arrow(x, y, z, vx, vy, vz, Diameter: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(x, y, z, vx, vy, vz, Diameter: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz)
|
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz)
|
||||||
function Arrow(x, y, z, vx, vy, vz: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(x, y, z, vx, vy, vz: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке p, направлением p, диаметра Diameter и длиной наконечника HeadLength
|
/// Возвращает 3D-стрелку с центром в точке p, направлением p, диаметра Diameter и длиной наконечника HeadLength
|
||||||
function Arrow(p: Point3D; v: Vector3D; Diameter, HeadLength: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(p: Point3D; v: Vector3D; Diameter, HeadLength: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке p, направлением p, диаметра Diameter
|
/// Возвращает 3D-стрелку с центром в точке p, направлением p, диаметра Diameter
|
||||||
function Arrow(p: Point3D; v: Vector3D; Diameter: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(p: Point3D; v: Vector3D; Diameter: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке p, направлением p
|
/// Возвращает 3D-стрелку с центром в точке p, направлением p
|
||||||
function Arrow(p: Point3D; v: Vector3D; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(p: Point3D; v: Vector3D; m: Material := nil): ArrowT;
|
||||||
|
|
||||||
///--
|
///--
|
||||||
function TruncatedCone(x, y, z, Height, Radius, TopRadius: real; topcap: boolean; m: Material := DefaultMaterial): TruncatedConeT;
|
function TruncatedCone(x, y, z, Height, Radius, TopRadius: real; topcap: boolean; m: Material := nil): TruncatedConeT;
|
||||||
/// Возвращает усеченный конус с центром основания в точке (x, y, z) высоты Height, радиуса основания Radius, верхнего радиуса TopRadius
|
/// Возвращает усеченный конус с центром основания в точке (x, y, z) высоты Height, радиуса основания Radius, верхнего радиуса TopRadius
|
||||||
function TruncatedCone(x, y, z, Height, Radius, TopRadius: real; m: Material := DefaultMaterial): TruncatedConeT;
|
function TruncatedCone(x, y, z, Height, Radius, TopRadius: real; m: Material := nil): TruncatedConeT;
|
||||||
///--
|
///--
|
||||||
function TruncatedCone(p: Point3D; Height, Radius, TopRadius: real; topcap: boolean; m: Material := DefaultMaterial): TruncatedConeT;
|
function TruncatedCone(p: Point3D; Height, Radius, TopRadius: real; topcap: boolean; m: Material := nil): TruncatedConeT;
|
||||||
/// Возвращает усеченный конус с центром основания в точке p высоты Height, радиуса основания Radius, верхнего радиуса TopRadius
|
/// Возвращает усеченный конус с центром основания в точке p высоты Height, радиуса основания Radius, верхнего радиуса TopRadius
|
||||||
function TruncatedCone(p: Point3D; Height, Radius, TopRadius: real; m: Material := DefaultMaterial): TruncatedConeT;
|
function TruncatedCone(p: Point3D; Height, Radius, TopRadius: real; m: Material := nil): TruncatedConeT;
|
||||||
|
|
||||||
///--
|
///--
|
||||||
function Cylinder(x, y, z, Height, Radius: real; topcap: boolean; m: Material := DefaultMaterial): CylinderT;
|
function Cylinder(x, y, z, Height, Radius: real; topcap: boolean; m: Material := nil): CylinderT;
|
||||||
/// Возвращает цилиндр с центром основания в точке (x, y, z) высоты Height радиуса Radius
|
/// Возвращает цилиндр с центром основания в точке (x, y, z) высоты Height радиуса Radius
|
||||||
function Cylinder(x, y, z, Height, Radius: real; m: Material := DefaultMaterial): CylinderT;
|
function Cylinder(x, y, z, Height, Radius: real; m: Material := nil): CylinderT;
|
||||||
///--
|
///--
|
||||||
function Cylinder(p: Point3D; Height, Radius: real; topcap: boolean; m: Material := DefaultMaterial): CylinderT;
|
function Cylinder(p: Point3D; Height, Radius: real; topcap: boolean; m: Material := nil): CylinderT;
|
||||||
/// Возвращает цилиндр с центром основания в точке p высоты Height радиуса Radius
|
/// Возвращает цилиндр с центром основания в точке p высоты Height радиуса Radius
|
||||||
function Cylinder(p: Point3D; Height, Radius: real; m: Material := DefaultMaterial): CylinderT;
|
function Cylinder(p: Point3D; Height, Radius: real; m: Material := nil): CylinderT;
|
||||||
/// Возвращает трубу с центром основания в точке (x, y, z) высотой Height, радиусом Radius и внутренним радиусом InnerRadius
|
/// Возвращает трубу с центром основания в точке (x, y, z) высотой Height, радиусом Radius и внутренним радиусом InnerRadius
|
||||||
function Tube(x, y, z, Height, Radius, InnerRadius: real; m: Material := DefaultMaterial): PipeT;
|
function Tube(x, y, z, Height, Radius, InnerRadius: real; m: Material := nil): PipeT;
|
||||||
/// Возвращает трубу с центром основания в точке p высотой Height, радиусом Radius и внутренним радиусом InnerRadius
|
/// Возвращает трубу с центром основания в точке p высотой Height, радиусом Radius и внутренним радиусом InnerRadius
|
||||||
function Tube(p: Point3D; Height, Radius, InnerRadius: real; m: Material := DefaultMaterial): PipeT;
|
function Tube(p: Point3D; Height, Radius, InnerRadius: real; m: Material := nil): PipeT;
|
||||||
/// Возвращает конус с центром основания в точке (x, y, z) высотой Height, радиусом Radius
|
/// Возвращает конус с центром основания в точке (x, y, z) высотой Height, радиусом Radius
|
||||||
function Cone(x, y, z, Height, Radius: real; m: Material := DefaultMaterial): TruncatedConeT;
|
function Cone(x, y, z, Height, Radius: real; m: Material := nil): TruncatedConeT;
|
||||||
/// Возвращает конус с центром основания в точке p высотой Height, радиусом Radius
|
/// Возвращает конус с центром основания в точке p высотой Height, радиусом Radius
|
||||||
function Cone(p: Point3D; Height, Radius: real; m: Material := DefaultMaterial): TruncatedConeT;
|
function Cone(p: Point3D; Height, Radius: real; m: Material := nil): TruncatedConeT;
|
||||||
/// Возвращает чайник с центром в точке (x, y, z)
|
/// Возвращает чайник с центром в точке (x, y, z)
|
||||||
function Teapot(x, y, z: real; c: Material := DefaultMaterial): TeapotT;
|
function Teapot(x, y, z: real; c: Material := nil): TeapotT;
|
||||||
/// Возвращает чайник с центром в точке p
|
/// Возвращает чайник с центром в точке p
|
||||||
function Teapot(p: Point3D; c: Material := DefaultMaterial): TeapotT;
|
function Teapot(p: Point3D; c: Material := nil): TeapotT;
|
||||||
/// Возвращает текст на билборде с центром в точке (x, y, z) с размером шрифта Fontsize
|
/// Возвращает текст на билборде с центром в точке (x, y, z) с размером шрифта Fontsize
|
||||||
function BillboardText(x, y, z: real; Text: string; Fontsize: real := 12): BillboardTextT;
|
function BillboardText(x, y, z: real; Text: string; Fontsize: real := 12): BillboardTextT;
|
||||||
/// Возвращает текст на билборде с центром в точке p с размером шрифта Fontsize
|
/// Возвращает текст на билборде с центром в точке p с размером шрифта Fontsize
|
||||||
|
|
@ -3279,25 +3277,29 @@ function CoordinateSystem(ArrowsLength, Diameter: real): CoordinateSystemT;
|
||||||
/// Возвращает координатную систему с длиной стрелок ArrowsLength
|
/// Возвращает координатную систему с длиной стрелок ArrowsLength
|
||||||
function CoordinateSystem(ArrowsLength: real): CoordinateSystemT;
|
function CoordinateSystem(ArrowsLength: real): CoordinateSystemT;
|
||||||
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height, именем шрифта FontName заданного цвета
|
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height, именем шрифта FontName заданного цвета
|
||||||
function Text3D(x, y, z: real; Text: string; Height: real; FontName: string := 'Arial'; c: Color := Colors.Black): TextT;
|
function Text3D(x, y, z: real; Text: string; Height: real; FontName: string; c: Color): TextT;
|
||||||
|
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height, именем шрифта FontName
|
||||||
|
function Text3D(x, y, z: real; Text: string; Height: real; FontName: string := 'Arial'): TextT;
|
||||||
/// Возвращает 3D-текст с центром в точке p с высотой Height, именем шрифта FontName заданного цвета
|
/// Возвращает 3D-текст с центром в точке p с высотой Height, именем шрифта FontName заданного цвета
|
||||||
function Text3D(p: Point3D; Text: string; Height: real; FontName: string := 'Arial'; c: Color := Colors.Black): TextT;
|
function Text3D(p: Point3D; Text: string; Height: real; FontName: string; c: Color): TextT;
|
||||||
|
/// Возвращает 3D-текст с центром в точке p с высотой Height, именем шрифта FontName
|
||||||
|
function Text3D(p: Point3D; Text: string; Height: real; FontName: string := 'Arial'): TextT;
|
||||||
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height заданного цвета
|
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height заданного цвета
|
||||||
function Text3D(x, y, z: real; Text: string; Height: real; c: Color): TextT;
|
function Text3D(x, y, z: real; Text: string; Height: real; c: Color): TextT;
|
||||||
/// Возвращает 3D-текст с центром в точке p с высотой Height заданного цвета
|
/// Возвращает 3D-текст с центром в точке p с высотой Height заданного цвета
|
||||||
function Text3D(p: Point3D; Text: string; Height: real; c: Color): TextT;
|
function Text3D(p: Point3D; Text: string; Height: real; c: Color): TextT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width, нормалью Normal и направлением длины LengthDirection
|
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width, нормалью Normal и направлением длины LengthDirection
|
||||||
function Rectangle3D(x, y, z, Length, Width: real; Normal, LengthDirection: Vector3D; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(x, y, z, Length, Width: real; Normal, LengthDirection: Vector3D; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width, нормалью Normal и направлением длины LengthDirection
|
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width, нормалью Normal и направлением длины LengthDirection
|
||||||
function Rectangle3D(p: Point3D; Length, Width: real; Normal, LengthDirection: Vector3D; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(p: Point3D; Length, Width: real; Normal, LengthDirection: Vector3D; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width, нормалью Normal
|
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width, нормалью Normal
|
||||||
function Rectangle3D(x, y, z, Length, Width: real; Normal: Vector3D; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(x, y, z, Length, Width: real; Normal: Vector3D; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width
|
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width
|
||||||
function Rectangle3D(x, y, z, Length, Width: real; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(x, y, z, Length, Width: real; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width, нормалью Normal
|
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width, нормалью Normal
|
||||||
function Rectangle3D(p: Point3D; Length, Width: real; Normal: Vector3D; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(p: Point3D; Length, Width: real; Normal: Vector3D; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width
|
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width
|
||||||
function Rectangle3D(p: Point3D; Length, Width: real; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(p: Point3D; Length, Width: real; m: Material := nil): RectangleT;
|
||||||
|
|
||||||
/// Загружает модель из файла в форматах .obj, .3ds, .lwo, .objz, .stl, .off и отображает ее в точке (x, y, z)
|
/// Загружает модель из файла в форматах .obj, .3ds, .lwo, .objz, .stl, .off и отображает ее в точке (x, y, z)
|
||||||
function FileModel3D(x, y, z: real; fname: string; m: Material): FileModelT;
|
function FileModel3D(x, y, z: real; fname: string; m: Material): FileModelT;
|
||||||
|
|
@ -3305,53 +3307,69 @@ function FileModel3D(x, y, z: real; fname: string; m: Material): FileModelT;
|
||||||
function FileModel3D(p: Point3D; fname: string; m: Material): FileModelT;
|
function FileModel3D(p: Point3D; fname: string; m: Material): FileModelT;
|
||||||
|
|
||||||
/// Возвращает правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function Prism(x, y, z: real; Sides: integer; Height, Radius: real; m: Material := DefaultMaterial): PrismT;
|
function Prism(x, y, z: real; Sides: integer; Height, Radius: real; m: Material := nil): PrismT;
|
||||||
/// Возвращает правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function Prism(p: Point3D; Sides: integer; Height, Radius: real; m: Material := DefaultMaterial): PrismT;
|
function Prism(p: Point3D; Sides: integer; Height, Radius: real; m: Material := nil): PrismT;
|
||||||
/// Возвращает проволочную правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
/// Возвращает проволочную правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
||||||
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real := 1.2; c: Color := GrayColor(64)): PrismTWireFrame;
|
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame;
|
||||||
|
/// Возвращает проволочную правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
||||||
|
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real := 1.2): PrismTWireFrame;
|
||||||
/// Возвращает проволочную правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
/// Возвращает проволочную правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
||||||
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real := 1.2; c: Color := GrayColor(64)): PrismTWireFrame;
|
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame;
|
||||||
|
/// Возвращает проволочную правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
||||||
|
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real := 1.2): PrismTWireFrame;
|
||||||
/// Возвращает правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function Pyramid(x, y, z: real; Sides: integer; Height, Radius: real; m: Material := DefaultMaterial): PyramidT;
|
function Pyramid(x, y, z: real; Sides: integer; Height, Radius: real; m: Material := nil): PyramidT;
|
||||||
/// Возвращает правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function Pyramid(p: Point3D; Sides: integer; Height, Radius: real; m: Material := DefaultMaterial): PyramidT;
|
function Pyramid(p: Point3D; Sides: integer; Height, Radius: real; m: Material := nil): PyramidT;
|
||||||
/// Возвращает проволочную правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает проволочную правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real := 1.2; c: Color := GrayColor(64)): PyramidTWireFrame;
|
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame;
|
||||||
|
/// Возвращает проволочную правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
|
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real := 1.2): PyramidTWireFrame;
|
||||||
/// Возвращает проволочную правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает проволочную правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real := 1.2; c: Color := GrayColor(64)): PyramidTWireFrame;
|
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame;
|
||||||
|
/// Возвращает проволочную правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
|
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real := 1.2): PyramidTWireFrame;
|
||||||
/// Возвращает лего-деталь с центром в точке (x, y, z), размера (Rows, Columns, Height), измеряемом в количестве кирпичиков по каждой размерности
|
/// Возвращает лего-деталь с центром в точке (x, y, z), размера (Rows, Columns, Height), измеряемом в количестве кирпичиков по каждой размерности
|
||||||
function Lego(x, y, z: real; Rows, Columns, Height: integer; m: Material := DefaultMaterial): LegoT;
|
function Lego(x, y, z: real; Rows, Columns, Height: integer; m: Material := nil): LegoT;
|
||||||
/// Возвращает икосаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
/// Возвращает икосаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
||||||
function Icosahedron(x, y, z, Radius: real; m: Material := DefaultMaterial): IcosahedronT;
|
function Icosahedron(x, y, z, Radius: real; m: Material := nil): IcosahedronT;
|
||||||
/// Возвращает додекаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
/// Возвращает додекаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
||||||
function Dodecahedron(x, y, z, Radius: real; m: Material := DefaultMaterial): DodecahedronT;
|
function Dodecahedron(x, y, z, Radius: real; m: Material := nil): DodecahedronT;
|
||||||
/// Возвращает тетраэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
/// Возвращает тетраэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
||||||
function Tetrahedron(x, y, z, Radius: real; m: Material := DefaultMaterial): TetrahedronT;
|
function Tetrahedron(x, y, z, Radius: real; m: Material := nil): TetrahedronT;
|
||||||
/// Возвращает октаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
/// Возвращает октаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
||||||
function Octahedron(x, y, z, Radius: real; m: Material := DefaultMaterial): OctahedronT;
|
function Octahedron(x, y, z, Radius: real; m: Material := nil): OctahedronT;
|
||||||
/// Возвращает икосаэдр с центром в точке p и радиусом описанной окружности Radius
|
/// Возвращает икосаэдр с центром в точке p и радиусом описанной окружности Radius
|
||||||
function Icosahedron(p: Point3D; Radius: real; m: Material := DefaultMaterial): IcosahedronT;
|
function Icosahedron(p: Point3D; Radius: real; m: Material := nil): IcosahedronT;
|
||||||
/// Возвращает додекаэдр с центром в точке p и радиусом описанной окружности Radius
|
/// Возвращает додекаэдр с центром в точке p и радиусом описанной окружности Radius
|
||||||
function Dodecahedron(p: Point3D; Radius: real; m: Material := DefaultMaterial): DodecahedronT;
|
function Dodecahedron(p: Point3D; Radius: real; m: Material := nil): DodecahedronT;
|
||||||
/// Возвращает тетраэдр с центром в точке p и радиусом описанной окружности Radius
|
/// Возвращает тетраэдр с центром в точке p и радиусом описанной окружности Radius
|
||||||
function Tetrahedron(p: Point3D; Radius: real; m: Material := DefaultMaterial): TetrahedronT;
|
function Tetrahedron(p: Point3D; Radius: real; m: Material := nil): TetrahedronT;
|
||||||
/// Возвращает октаэдр с центром в точке p и радиусом описанной окружности Radius
|
/// Возвращает октаэдр с центром в точке p и радиусом описанной окружности Radius
|
||||||
function Octahedron(p: Point3D; Radius: real; m: Material := DefaultMaterial): OctahedronT;
|
function Octahedron(p: Point3D; Radius: real; m: Material := nil): OctahedronT;
|
||||||
/// Возвращает набор отрезков, задаваемых последовательностью точек points, толщиной Thickness, заданного цвета. Количество точек должно быть четным
|
/// Возвращает набор отрезков, задаваемых последовательностью точек points, толщиной Thickness, заданного цвета. Количество точек должно быть четным
|
||||||
function Segments3D(points: sequence of Point3D; Thickness: real := 1.2; c: Color := GrayColor(64)): SegmentsT;
|
function Segments3D(points: sequence of Point3D; Thickness: real; c: Color): SegmentsT;
|
||||||
|
/// Возвращает набор отрезков, задаваемых последовательностью точек points, толщиной Thickness. Количество точек должно быть четным
|
||||||
|
function Segments3D(points: sequence of Point3D; Thickness: real := 1.2): SegmentsT;
|
||||||
/// Возвращает ломаную, задаваемую последовательностью точек points, толщиной Thickness, заданного цвета
|
/// Возвращает ломаную, задаваемую последовательностью точек points, толщиной Thickness, заданного цвета
|
||||||
function Polyline3D(points: sequence of Point3D; Thickness: real := 1.2; c: Color := GrayColor(64)): SegmentsT;
|
function Polyline3D(points: sequence of Point3D; Thickness: real; c: Color): SegmentsT;
|
||||||
|
/// Возвращает ломаную, задаваемую последовательностью точек points, толщиной Thickness
|
||||||
|
function Polyline3D(points: sequence of Point3D; Thickness: real := 1.2): SegmentsT;
|
||||||
/// Возвращает замкнутую ломаную, задаваемую последовательностью точек points, толщиной Thickness, заданного цвета
|
/// Возвращает замкнутую ломаную, задаваемую последовательностью точек points, толщиной Thickness, заданного цвета
|
||||||
function Polygon3D(points: sequence of Point3D; Thickness: real := 1.2; c: Color := GrayColor(64)): SegmentsT;
|
function Polygon3D(points: sequence of Point3D; Thickness: real; c: Color): SegmentsT;
|
||||||
|
/// Возвращает замкнутую ломаную, задаваемую последовательностью точек points, толщиной Thickness
|
||||||
|
function Polygon3D(points: sequence of Point3D; Thickness: real := 1.2): SegmentsT;
|
||||||
/// Возвращает отрезок из точки p1 в точку p2 толщиной Thickness заданного цвета
|
/// Возвращает отрезок из точки p1 в точку p2 толщиной Thickness заданного цвета
|
||||||
function Segment3D(p1, p2: Point3D; Thickness: real := 1.2; c: Color := GrayColor(64)): SegmentsT;
|
function Segment3D(p1, p2: Point3D; Thickness: real; c: Color): SegmentsT;
|
||||||
|
/// Возвращает отрезок из точки p1 в точку p2 толщиной Thickness заданного цвета
|
||||||
|
function Segment3D(p1, p2: Point3D; Thickness: real := 1.2): SegmentsT;
|
||||||
/// Возвращает тор (бублик) с центром в точке (x, y, z), диаметром Diameter и диаметром трубы TubeDiameter
|
/// Возвращает тор (бублик) с центром в точке (x, y, z), диаметром Diameter и диаметром трубы TubeDiameter
|
||||||
function Torus(x, y, z, Diameter, TubeDiameter: real; m: Material := DefaultMaterial): TorusT;
|
function Torus(x, y, z, Diameter, TubeDiameter: real; m: Material := nil): TorusT;
|
||||||
/// Возвращает тор (бублик) с центром в точке p, диаметром Diameter и диаметром трубы TubeDiameter
|
/// Возвращает тор (бублик) с центром в точке p, диаметром Diameter и диаметром трубы TubeDiameter
|
||||||
function Torus(p: Point3D; Diameter, TubeDiameter: real; m: Material := DefaultMaterial): TorusT;
|
function Torus(p: Point3D; Diameter, TubeDiameter: real; m: Material := nil): TorusT;
|
||||||
/// Возвращает треугольник, соединяющий точки p1, p2, p3
|
/// Возвращает треугольник, соединяющий точки p1, p2, p3
|
||||||
function Triangle(p1, p2, p3: Point3D; m: Material := DefaultMaterial): TriangleT;
|
function Triangle(p1, p2, p3: Point3D; m: Material := nil): TriangleT;
|
||||||
|
|
||||||
// Конец примитивов
|
// Конец примитивов
|
||||||
//------------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------------
|
||||||
|
|
@ -4116,8 +4134,6 @@ function Group(en: sequence of Object3D): Group3D := Inv(()->Group3D.Create(0, 0
|
||||||
|
|
||||||
function Sphere(x, y, z, Radius: real; m: Material): SphereT := Inv(()->SphereT.Create(x, y, z, Radius, m));
|
function Sphere(x, y, z, Radius: real; m: Material): SphereT := Inv(()->SphereT.Create(x, y, z, Radius, m));
|
||||||
|
|
||||||
function Sphere(x, y, z, Radius: real): SphereT := Sphere(x, y, z, Radius, DefaultMaterial);
|
|
||||||
|
|
||||||
function Sphere(center: Point3D; Radius: real; m: Material) := Sphere(center.x, center.y, center.z, Radius, m);
|
function Sphere(center: Point3D; Radius: real; m: Material) := Sphere(center.x, center.y, center.z, Radius, m);
|
||||||
|
|
||||||
function Ellipsoid(x, y, z, RadiusX, RadiusY, RadiusZ: real; m: Material): EllipsoidT := Inv(()->EllipsoidT.Create(x, y, z, RadiusX, RadiusY, RadiusZ, m));
|
function Ellipsoid(x, y, z, RadiusX, RadiusY, RadiusZ: real; m: Material): EllipsoidT := Inv(()->EllipsoidT.Create(x, y, z, RadiusX, RadiusY, RadiusZ, m));
|
||||||
|
|
@ -4192,8 +4208,14 @@ function CoordinateSystem(ArrowsLength: real) := CoordinateSystem(arrowslength,
|
||||||
|
|
||||||
function Text3D(x, y, z: real; Text: string; Height: real; fontname: string; c: Color): TextT := Inv(()->TextT.Create(x, y, z, text, height, fontname, c));
|
function Text3D(x, y, z: real; Text: string; Height: real; fontname: string; c: Color): TextT := Inv(()->TextT.Create(x, y, z, text, height, fontname, c));
|
||||||
|
|
||||||
|
function Text3D(x, y, z: real; Text: string; Height: real; FontName: string): TextT
|
||||||
|
:= Text3D(x, y, z, Text, Height, FontName, Colors.Black);
|
||||||
|
|
||||||
function Text3D(p: Point3D; Text: string; Height: real; fontname: string; c: Color) := Text3D(P.x, p.y, p.z, text, height, fontname, c);
|
function Text3D(p: Point3D; Text: string; Height: real; fontname: string; c: Color) := Text3D(P.x, p.y, p.z, text, height, fontname, c);
|
||||||
|
|
||||||
|
function Text3D(p: Point3D; Text: string; Height: real; FontName: string): TextT
|
||||||
|
:= Text3D(p, Text, Height, FontName, Colors.Black);
|
||||||
|
|
||||||
function Text3D(x, y, z: real; Text: string; Height: real; c: Color) := Text3D(x, y, z, text, height, 'Arial', c);
|
function Text3D(x, y, z: real; Text: string; Height: real; c: Color) := Text3D(x, y, z, text, height, 'Arial', c);
|
||||||
|
|
||||||
function Text3D(p: Point3D; Text: string; Height: real; c: Color) := Text3D(p.x, p.y, p.z, text, height, 'Arial', c);
|
function Text3D(p: Point3D; Text: string; Height: real; c: Color) := Text3D(p.x, p.y, p.z, text, height, 'Arial', c);
|
||||||
|
|
@ -4221,16 +4243,28 @@ function Prism(p: Point3D; Sides: integer; Height, Radius: real; m: Material): P
|
||||||
|
|
||||||
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame := Inv(()->PrismTWireFrame.Create(x, y, z, Sides, Radius, Height, thickness, c));
|
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame := Inv(()->PrismTWireFrame.Create(x, y, z, Sides, Radius, Height, thickness, c));
|
||||||
|
|
||||||
|
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real): PrismTWireFrame
|
||||||
|
:= PrismWireFrame(x, y, z, Sides, Height, Radius, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame := PrismWireFrame(p.x, p.y, p.z, Sides, Height, Radius, thickness, c);
|
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame := PrismWireFrame(p.x, p.y, p.z, Sides, Height, Radius, thickness, c);
|
||||||
|
|
||||||
|
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real): PrismTWireFrame
|
||||||
|
:= PrismWireFrame(p, Sides, Height, Radius, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function Pyramid(x, y, z: real; Sides: integer; Height, Radius: real; m: Material): PyramidT := Inv(()->PyramidT.Create(x, y, z, Sides, Radius, Height, m));
|
function Pyramid(x, y, z: real; Sides: integer; Height, Radius: real; m: Material): PyramidT := Inv(()->PyramidT.Create(x, y, z, Sides, Radius, Height, m));
|
||||||
|
|
||||||
function Pyramid(p: Point3D; Sides: integer; Height, Radius: real; m: Material): PyramidT := Pyramid(p.X, p.Y, p.Z, Sides, Height, Radius, m);
|
function Pyramid(p: Point3D; Sides: integer; Height, Radius: real; m: Material): PyramidT := Pyramid(p.X, p.Y, p.Z, Sides, Height, Radius, m);
|
||||||
|
|
||||||
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame := Inv(()->PyramidTWireFrame.Create(x, y, z, Sides, Radius, Height, thickness, c));
|
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame := Inv(()->PyramidTWireFrame.Create(x, y, z, Sides, Radius, Height, thickness, c));
|
||||||
|
|
||||||
|
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real): PyramidTWireFrame
|
||||||
|
:= PyramidWireFrame(x, y, z, Sides, Height, Radius, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame := PyramidWireFrame(p.x, p.y, p.z, Sides, Height, Radius, thickness, c);
|
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame := PyramidWireFrame(p.x, p.y, p.z, Sides, Height, Radius, thickness, c);
|
||||||
|
|
||||||
|
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real): PyramidTWireFrame
|
||||||
|
:= PyramidWireFrame(p, Sides, Height, Radius, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function Lego(x, y, z: real; Rows, Columns, Height: integer; m: Material): LegoT := Inv(()->LegoT.Create(x, y, z, Rows, Columns, Height, m));
|
function Lego(x, y, z: real; Rows, Columns, Height: integer; m: Material): LegoT := Inv(()->LegoT.Create(x, y, z, Rows, Columns, Height, m));
|
||||||
|
|
||||||
function Icosahedron(x, y, z, Radius: real; m: Material): IcosahedronT := Inv(()->IcosahedronT.Create(x, y, z, 4 * Radius / Sqrt(2) / Sqrt(5 + Sqrt(5)), m));
|
function Icosahedron(x, y, z, Radius: real; m: Material): IcosahedronT := Inv(()->IcosahedronT.Create(x, y, z, 4 * Radius / Sqrt(2) / Sqrt(5 + Sqrt(5)), m));
|
||||||
|
|
@ -4251,6 +4285,18 @@ function Octahedron(p: Point3D; Radius: real; m: Material): OctahedronT := Octah
|
||||||
|
|
||||||
function Segments3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create(points, thickness, c));
|
function Segments3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create(points, thickness, c));
|
||||||
|
|
||||||
|
function Segments3D(points: sequence of Point3D; Thickness: real): SegmentsT
|
||||||
|
:= Segments3D(points, Thickness, GrayColor(64));
|
||||||
|
|
||||||
|
function Polyline3D(points: sequence of Point3D; Thickness: real): SegmentsT
|
||||||
|
:= Polyline3D(points, Thickness, GrayColor(64));
|
||||||
|
|
||||||
|
function Polygon3D(points: sequence of Point3D; Thickness: real): SegmentsT
|
||||||
|
:= Polygon3D(points, Thickness, GrayColor(64));
|
||||||
|
|
||||||
|
function Segment3D(p1, p2: Point3D; Thickness: real): SegmentsT
|
||||||
|
:= Segment3D(p1, p2, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function Polyline3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create(points.Pairwise.SelectMany(x -> Seq(x[0], x[1])), thickness, c));
|
function Polyline3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create(points.Pairwise.SelectMany(x -> Seq(x[0], x[1])), thickness, c));
|
||||||
|
|
||||||
function Polygon3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create((points + points.First).Pairwise.SelectMany(x -> Seq(x[0], x[1])), thickness, c));
|
function Polygon3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create((points + points.First).Pairwise.SelectMany(x -> Seq(x[0], x[1])), thickness, c));
|
||||||
|
|
|
||||||
|
|
@ -10,5 +10,5 @@ begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
p1(()-> exit());
|
p1(procedure-> exit());
|
||||||
end.
|
end.
|
||||||
|
|
@ -16978,8 +16978,8 @@ namespace PascalABCCompiler.TreeConverter
|
||||||
if (!(sil.FirstOrDefault().sym_info is common_in_function_function_node))
|
if (!(sil.FirstOrDefault().sym_info is common_in_function_function_node))
|
||||||
{
|
{
|
||||||
var ex = sil.FirstOrDefault().sym_info as basic_function_node;
|
var ex = sil.FirstOrDefault().sym_info as basic_function_node;
|
||||||
if (ex != null && ex.name.ToLower() == "exit")
|
//if (ex != null && ex.name.ToLower() == "exit")
|
||||||
return new basic_function_call(ex, ex.location);
|
// return new basic_function_call(ex, ex.location);
|
||||||
return make_delegate_wrapper(null, sil, lloc, ((sil.FirstOrDefault().sym_info is common_method_node) && ((common_method_node)sil.FirstOrDefault().sym_info).IsStatic));
|
return make_delegate_wrapper(null, sil, lloc, ((sil.FirstOrDefault().sym_info is common_method_node) && ((common_method_node)sil.FirstOrDefault().sym_info).IsStatic));
|
||||||
}
|
}
|
||||||
return convertion_data_and_alghoritms.create_full_function_call(new expressions_list(),
|
return convertion_data_and_alghoritms.create_full_function_call(new expressions_list(),
|
||||||
|
|
|
||||||
|
|
@ -107,10 +107,12 @@ type
|
||||||
SetFSzPP(Self.p,value);
|
SetFSzPP(Self.p,value);
|
||||||
end;
|
end;
|
||||||
public
|
public
|
||||||
constructor Create(wh: real := 150; d: Dock := Dock.Left; c: Color := PanelsColor; internalMargin: real := 10);
|
constructor Create(wh: real; d: Dock; c: Color; internalMargin: real);
|
||||||
begin
|
begin
|
||||||
Invoke(CreateP,wh,d,c,internalMargin);
|
Invoke(CreateP,wh,d,c,internalMargin);
|
||||||
end;
|
end;
|
||||||
|
constructor Create(wh: real; d: Dock; c: Color) := Create(wh,d,c,10);
|
||||||
|
constructor Create(wh: real := 150; d: Dock := Dock.Left) := Create(wh,d,PanelsColor,10);
|
||||||
/// Цвет
|
/// Цвет
|
||||||
property Color: GColor read Invoke&<GColor>(GetColorP) write Invoke(SetColorP, value);
|
property Color: GColor read Invoke&<GColor>(GetColorP) write Invoke(SetColorP, value);
|
||||||
/// Ширина внутренней границы
|
/// Ширина внутренней границы
|
||||||
|
|
@ -128,19 +130,23 @@ type
|
||||||
/// Класс левой панели
|
/// Класс левой панели
|
||||||
LeftPanelWPF = class(PanelWPF)
|
LeftPanelWPF = class(PanelWPF)
|
||||||
public
|
public
|
||||||
constructor Create(width: real := 150; c: GColor := PanelsColor; internalMargin: real := 10);
|
constructor Create(width: real; c: GColor; internalMargin: real);
|
||||||
begin
|
begin
|
||||||
inherited Create(width, Dock.Left,c,internalMargin)
|
inherited Create(width, Dock.Left,c,internalMargin)
|
||||||
end;
|
end;
|
||||||
|
constructor Create(width: real; c: GColor) := Create(width,c,10);
|
||||||
|
constructor Create(width: real := 150) := Create(width,PanelsColor,10);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
/// Класс правой панели
|
/// Класс правой панели
|
||||||
RightPanelWPF = class(PanelWPF)
|
RightPanelWPF = class(PanelWPF)
|
||||||
public
|
public
|
||||||
constructor Create(width: real := 150; c: GColor := PanelsColor; internalMargin: real := 10);
|
constructor Create(width: real; c: GColor; internalMargin: real);
|
||||||
begin
|
begin
|
||||||
inherited Create(width, Dock.Right,c,internalMargin)
|
inherited Create(width, Dock.Right,c,internalMargin)
|
||||||
end;
|
end;
|
||||||
|
constructor Create(width: real; c: GColor) := Create(width,c,10);
|
||||||
|
constructor Create(width: real := 150) := Create(width,PanelsColor,10);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
///!#
|
///!#
|
||||||
|
|
@ -1221,9 +1227,13 @@ function OpenFileDialog(initDirectory: string := ''; filter: string := ''): Open
|
||||||
function SaveFileDialog(initDirectory: string := ''; filter: string := ''): SaveFileDialogWPF;
|
function SaveFileDialog(initDirectory: string := ''; filter: string := ''): SaveFileDialogWPF;
|
||||||
|
|
||||||
/// Элемент управления "Левая панель"
|
/// Элемент управления "Левая панель"
|
||||||
function LeftPanel(width: real := 150; c: Color := PanelsColor; InternalMargin: real := 10): PanelWPF;
|
function LeftPanel(width: real; c: Color; InternalMargin: real := 10): PanelWPF;
|
||||||
|
/// Элемент управления "Левая панель"
|
||||||
|
function LeftPanel(width: real := 150): PanelWPF;
|
||||||
/// Элемент управления "Правая панель"
|
/// Элемент управления "Правая панель"
|
||||||
function RightPanel(width: real := 150; c: Color := PanelsColor; InternalMargin: real := 10): PanelWPF;
|
function RightPanel(width: real; c: Color; InternalMargin: real := 10): PanelWPF;
|
||||||
|
/// Элемент управления "Правая панель"
|
||||||
|
function RightPanel(width: real := 150): PanelWPF;
|
||||||
|
|
||||||
/// Элемент управления "Строка статуса"
|
/// Элемент управления "Строка статуса"
|
||||||
function StatusBar(height: real := 24; itemWidth: real := 0): StatusBarWPF;
|
function StatusBar(height: real := 24; itemWidth: real := 0): StatusBarWPF;
|
||||||
|
|
@ -1323,7 +1333,11 @@ function OpenFileDialog(initDirectory: string; filter: string) := new OpenFileDi
|
||||||
function SaveFileDialog(initDirectory: string; filter: string) := new SaveFileDialogWPF(initDirectory,filter);
|
function SaveFileDialog(initDirectory: string; filter: string) := new SaveFileDialogWPF(initDirectory,filter);
|
||||||
|
|
||||||
function LeftPanel(width: real; c: Color; internalMargin: real) := new LeftPanelWPF(width,c,internalMargin);
|
function LeftPanel(width: real; c: Color; internalMargin: real) := new LeftPanelWPF(width,c,internalMargin);
|
||||||
|
function LeftPanel(width: real): PanelWPF := new LeftPanelWPF(width,PanelsColor,10);
|
||||||
|
|
||||||
function RightPanel(width: real; c: Color; internalMargin: real) := new RightPanelWPF(width,c,internalMargin);
|
function RightPanel(width: real; c: Color; internalMargin: real) := new RightPanelWPF(width,c,internalMargin);
|
||||||
|
function RightPanel(width: real): PanelWPF := new RightPanelWPF(width,PanelsColor,10);
|
||||||
|
|
||||||
|
|
||||||
function StatusBar(height: real; itemWidth: real): StatusBarWPF := new StatusBarWPF(height,itemWidth);
|
function StatusBar(height: real; itemWidth: real): StatusBarWPF := new StatusBarWPF(height,itemWidth);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3211,65 +3211,63 @@ procedure ShowObjects;
|
||||||
//>> Graph3D: функции для создания 3D-объектов # Graph3D functions for creation 3D-objects
|
//>> Graph3D: функции для создания 3D-объектов # Graph3D functions for creation 3D-objects
|
||||||
// -----------------------------------------------------
|
// -----------------------------------------------------
|
||||||
/// Возвращает сферу с центром в точке (x, y, z) радиуса Radius
|
/// Возвращает сферу с центром в точке (x, y, z) радиуса Radius
|
||||||
function Sphere(x, y, z, Radius: real; m: Material): SphereT;
|
function Sphere(x, y, z, Radius: real; m: Material := nil): SphereT;
|
||||||
/// Возвращает сферу с центром в точке (x, y, z) радиуса Radius
|
|
||||||
function Sphere(x, y, z, Radius: real): SphereT;
|
|
||||||
/// Возвращает сферу с центром в точке center радиуса Radius
|
/// Возвращает сферу с центром в точке center радиуса Radius
|
||||||
function Sphere(center: Point3D; Radius: real; m: Material := nil): SphereT;
|
function Sphere(center: Point3D; Radius: real; m: Material := nil): SphereT;
|
||||||
/// Возвращает эллипсоид с центром в точке (x, y, z) и радиусами RadiusX, RadiusY, RadiusZ
|
/// Возвращает эллипсоид с центром в точке (x, y, z) и радиусами RadiusX, RadiusY, RadiusZ
|
||||||
function Ellipsoid(x, y, z, RadiusX, RadiusY, RadiusZ: real; m: Material := DefaultMaterial): EllipsoidT;
|
function Ellipsoid(x, y, z, RadiusX, RadiusY, RadiusZ: real; m: Material := nil): EllipsoidT;
|
||||||
/// Возвращает эллипсоид с центром в точке center и радиусами RadiusX, RadiusY, RadiusZ
|
/// Возвращает эллипсоид с центром в точке center и радиусами RadiusX, RadiusY, RadiusZ
|
||||||
function Ellipsoid(center: Point3D; RadiusX, RadiusY, RadiusZ: real; m: Material := DefaultMaterial): EllipsoidT;
|
function Ellipsoid(center: Point3D; RadiusX, RadiusY, RadiusZ: real; m: Material := nil): EllipsoidT;
|
||||||
/// Возвращает куб с центром в точке (x, y, z) и длиной стороны SideLength
|
/// Возвращает куб с центром в точке (x, y, z) и длиной стороны SideLength
|
||||||
function Cube(x, y, z, SideLength: real; m: Material := DefaultMaterial): CubeT;
|
function Cube(x, y, z, SideLength: real; m: Material := nil): CubeT;
|
||||||
/// Возвращает куб с центром в точке center и длиной стороны SideLength
|
/// Возвращает куб с центром в точке center и длиной стороны SideLength
|
||||||
function Cube(center: Point3D; SideLength: real; m: Material := DefaultMaterial): CubeT;
|
function Cube(center: Point3D; SideLength: real; m: Material := nil): CubeT;
|
||||||
/// Возвращает паралеллепипед с центром в точке (x, y, z) и размерами SizeX, SizeY, SizeZ
|
/// Возвращает паралеллепипед с центром в точке (x, y, z) и размерами SizeX, SizeY, SizeZ
|
||||||
function Box(x, y, z, SizeX, SizeY, SizeZ: real; m: Material := DefaultMaterial): BoxT;
|
function Box(x, y, z, SizeX, SizeY, SizeZ: real; m: Material := nil): BoxT;
|
||||||
/// Возвращает паралеллепипед с центром в точке center и размерами SizeX, SizeY, SizeZ
|
/// Возвращает паралеллепипед с центром в точке center и размерами SizeX, SizeY, SizeZ
|
||||||
function Box(center: Point3D; sz: Size3D; m: Material := DefaultMaterial): BoxT;
|
function Box(center: Point3D; sz: Size3D; m: Material := nil): BoxT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz), диаметра Diameter и длиной наконечника HeadLength
|
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz), диаметра Diameter и длиной наконечника HeadLength
|
||||||
function Arrow(x, y, z, vx, vy, vz, Diameter, HeadLength: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(x, y, z, vx, vy, vz, Diameter, HeadLength: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz), диаметра Diameter
|
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz), диаметра Diameter
|
||||||
function Arrow(x, y, z, vx, vy, vz, Diameter: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(x, y, z, vx, vy, vz, Diameter: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz)
|
/// Возвращает 3D-стрелку с центром в точке (x, y, z), направлением (vx, vy, vz)
|
||||||
function Arrow(x, y, z, vx, vy, vz: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(x, y, z, vx, vy, vz: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке p, направлением p, диаметра Diameter и длиной наконечника HeadLength
|
/// Возвращает 3D-стрелку с центром в точке p, направлением p, диаметра Diameter и длиной наконечника HeadLength
|
||||||
function Arrow(p: Point3D; v: Vector3D; Diameter, HeadLength: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(p: Point3D; v: Vector3D; Diameter, HeadLength: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке p, направлением p, диаметра Diameter
|
/// Возвращает 3D-стрелку с центром в точке p, направлением p, диаметра Diameter
|
||||||
function Arrow(p: Point3D; v: Vector3D; Diameter: real; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(p: Point3D; v: Vector3D; Diameter: real; m: Material := nil): ArrowT;
|
||||||
/// Возвращает 3D-стрелку с центром в точке p, направлением p
|
/// Возвращает 3D-стрелку с центром в точке p, направлением p
|
||||||
function Arrow(p: Point3D; v: Vector3D; m: Material := DefaultMaterial): ArrowT;
|
function Arrow(p: Point3D; v: Vector3D; m: Material := nil): ArrowT;
|
||||||
|
|
||||||
///--
|
///--
|
||||||
function TruncatedCone(x, y, z, Height, Radius, TopRadius: real; topcap: boolean; m: Material := DefaultMaterial): TruncatedConeT;
|
function TruncatedCone(x, y, z, Height, Radius, TopRadius: real; topcap: boolean; m: Material := nil): TruncatedConeT;
|
||||||
/// Возвращает усеченный конус с центром основания в точке (x, y, z) высоты Height, радиуса основания Radius, верхнего радиуса TopRadius
|
/// Возвращает усеченный конус с центром основания в точке (x, y, z) высоты Height, радиуса основания Radius, верхнего радиуса TopRadius
|
||||||
function TruncatedCone(x, y, z, Height, Radius, TopRadius: real; m: Material := DefaultMaterial): TruncatedConeT;
|
function TruncatedCone(x, y, z, Height, Radius, TopRadius: real; m: Material := nil): TruncatedConeT;
|
||||||
///--
|
///--
|
||||||
function TruncatedCone(p: Point3D; Height, Radius, TopRadius: real; topcap: boolean; m: Material := DefaultMaterial): TruncatedConeT;
|
function TruncatedCone(p: Point3D; Height, Radius, TopRadius: real; topcap: boolean; m: Material := nil): TruncatedConeT;
|
||||||
/// Возвращает усеченный конус с центром основания в точке p высоты Height, радиуса основания Radius, верхнего радиуса TopRadius
|
/// Возвращает усеченный конус с центром основания в точке p высоты Height, радиуса основания Radius, верхнего радиуса TopRadius
|
||||||
function TruncatedCone(p: Point3D; Height, Radius, TopRadius: real; m: Material := DefaultMaterial): TruncatedConeT;
|
function TruncatedCone(p: Point3D; Height, Radius, TopRadius: real; m: Material := nil): TruncatedConeT;
|
||||||
|
|
||||||
///--
|
///--
|
||||||
function Cylinder(x, y, z, Height, Radius: real; topcap: boolean; m: Material := DefaultMaterial): CylinderT;
|
function Cylinder(x, y, z, Height, Radius: real; topcap: boolean; m: Material := nil): CylinderT;
|
||||||
/// Возвращает цилиндр с центром основания в точке (x, y, z) высоты Height радиуса Radius
|
/// Возвращает цилиндр с центром основания в точке (x, y, z) высоты Height радиуса Radius
|
||||||
function Cylinder(x, y, z, Height, Radius: real; m: Material := DefaultMaterial): CylinderT;
|
function Cylinder(x, y, z, Height, Radius: real; m: Material := nil): CylinderT;
|
||||||
///--
|
///--
|
||||||
function Cylinder(p: Point3D; Height, Radius: real; topcap: boolean; m: Material := DefaultMaterial): CylinderT;
|
function Cylinder(p: Point3D; Height, Radius: real; topcap: boolean; m: Material := nil): CylinderT;
|
||||||
/// Возвращает цилиндр с центром основания в точке p высоты Height радиуса Radius
|
/// Возвращает цилиндр с центром основания в точке p высоты Height радиуса Radius
|
||||||
function Cylinder(p: Point3D; Height, Radius: real; m: Material := DefaultMaterial): CylinderT;
|
function Cylinder(p: Point3D; Height, Radius: real; m: Material := nil): CylinderT;
|
||||||
/// Возвращает трубу с центром основания в точке (x, y, z) высотой Height, радиусом Radius и внутренним радиусом InnerRadius
|
/// Возвращает трубу с центром основания в точке (x, y, z) высотой Height, радиусом Radius и внутренним радиусом InnerRadius
|
||||||
function Tube(x, y, z, Height, Radius, InnerRadius: real; m: Material := DefaultMaterial): PipeT;
|
function Tube(x, y, z, Height, Radius, InnerRadius: real; m: Material := nil): PipeT;
|
||||||
/// Возвращает трубу с центром основания в точке p высотой Height, радиусом Radius и внутренним радиусом InnerRadius
|
/// Возвращает трубу с центром основания в точке p высотой Height, радиусом Radius и внутренним радиусом InnerRadius
|
||||||
function Tube(p: Point3D; Height, Radius, InnerRadius: real; m: Material := DefaultMaterial): PipeT;
|
function Tube(p: Point3D; Height, Radius, InnerRadius: real; m: Material := nil): PipeT;
|
||||||
/// Возвращает конус с центром основания в точке (x, y, z) высотой Height, радиусом Radius
|
/// Возвращает конус с центром основания в точке (x, y, z) высотой Height, радиусом Radius
|
||||||
function Cone(x, y, z, Height, Radius: real; m: Material := DefaultMaterial): TruncatedConeT;
|
function Cone(x, y, z, Height, Radius: real; m: Material := nil): TruncatedConeT;
|
||||||
/// Возвращает конус с центром основания в точке p высотой Height, радиусом Radius
|
/// Возвращает конус с центром основания в точке p высотой Height, радиусом Radius
|
||||||
function Cone(p: Point3D; Height, Radius: real; m: Material := DefaultMaterial): TruncatedConeT;
|
function Cone(p: Point3D; Height, Radius: real; m: Material := nil): TruncatedConeT;
|
||||||
/// Возвращает чайник с центром в точке (x, y, z)
|
/// Возвращает чайник с центром в точке (x, y, z)
|
||||||
function Teapot(x, y, z: real; c: Material := DefaultMaterial): TeapotT;
|
function Teapot(x, y, z: real; c: Material := nil): TeapotT;
|
||||||
/// Возвращает чайник с центром в точке p
|
/// Возвращает чайник с центром в точке p
|
||||||
function Teapot(p: Point3D; c: Material := DefaultMaterial): TeapotT;
|
function Teapot(p: Point3D; c: Material := nil): TeapotT;
|
||||||
/// Возвращает текст на билборде с центром в точке (x, y, z) с размером шрифта Fontsize
|
/// Возвращает текст на билборде с центром в точке (x, y, z) с размером шрифта Fontsize
|
||||||
function BillboardText(x, y, z: real; Text: string; Fontsize: real := 12): BillboardTextT;
|
function BillboardText(x, y, z: real; Text: string; Fontsize: real := 12): BillboardTextT;
|
||||||
/// Возвращает текст на билборде с центром в точке p с размером шрифта Fontsize
|
/// Возвращает текст на билборде с центром в точке p с размером шрифта Fontsize
|
||||||
|
|
@ -3279,25 +3277,29 @@ function CoordinateSystem(ArrowsLength, Diameter: real): CoordinateSystemT;
|
||||||
/// Возвращает координатную систему с длиной стрелок ArrowsLength
|
/// Возвращает координатную систему с длиной стрелок ArrowsLength
|
||||||
function CoordinateSystem(ArrowsLength: real): CoordinateSystemT;
|
function CoordinateSystem(ArrowsLength: real): CoordinateSystemT;
|
||||||
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height, именем шрифта FontName заданного цвета
|
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height, именем шрифта FontName заданного цвета
|
||||||
function Text3D(x, y, z: real; Text: string; Height: real; FontName: string := 'Arial'; c: Color := Colors.Black): TextT;
|
function Text3D(x, y, z: real; Text: string; Height: real; FontName: string; c: Color): TextT;
|
||||||
|
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height, именем шрифта FontName
|
||||||
|
function Text3D(x, y, z: real; Text: string; Height: real; FontName: string := 'Arial'): TextT;
|
||||||
/// Возвращает 3D-текст с центром в точке p с высотой Height, именем шрифта FontName заданного цвета
|
/// Возвращает 3D-текст с центром в точке p с высотой Height, именем шрифта FontName заданного цвета
|
||||||
function Text3D(p: Point3D; Text: string; Height: real; FontName: string := 'Arial'; c: Color := Colors.Black): TextT;
|
function Text3D(p: Point3D; Text: string; Height: real; FontName: string; c: Color): TextT;
|
||||||
|
/// Возвращает 3D-текст с центром в точке p с высотой Height, именем шрифта FontName
|
||||||
|
function Text3D(p: Point3D; Text: string; Height: real; FontName: string := 'Arial'): TextT;
|
||||||
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height заданного цвета
|
/// Возвращает 3D-текст с центром в точке (x, y, z) с высотой Height заданного цвета
|
||||||
function Text3D(x, y, z: real; Text: string; Height: real; c: Color): TextT;
|
function Text3D(x, y, z: real; Text: string; Height: real; c: Color): TextT;
|
||||||
/// Возвращает 3D-текст с центром в точке p с высотой Height заданного цвета
|
/// Возвращает 3D-текст с центром в точке p с высотой Height заданного цвета
|
||||||
function Text3D(p: Point3D; Text: string; Height: real; c: Color): TextT;
|
function Text3D(p: Point3D; Text: string; Height: real; c: Color): TextT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width, нормалью Normal и направлением длины LengthDirection
|
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width, нормалью Normal и направлением длины LengthDirection
|
||||||
function Rectangle3D(x, y, z, Length, Width: real; Normal, LengthDirection: Vector3D; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(x, y, z, Length, Width: real; Normal, LengthDirection: Vector3D; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width, нормалью Normal и направлением длины LengthDirection
|
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width, нормалью Normal и направлением длины LengthDirection
|
||||||
function Rectangle3D(p: Point3D; Length, Width: real; Normal, LengthDirection: Vector3D; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(p: Point3D; Length, Width: real; Normal, LengthDirection: Vector3D; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width, нормалью Normal
|
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width, нормалью Normal
|
||||||
function Rectangle3D(x, y, z, Length, Width: real; Normal: Vector3D; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(x, y, z, Length, Width: real; Normal: Vector3D; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width
|
/// Возвращает 3D-прямоугольник с центром в точке (x, y, z) длины Length, ширины Width
|
||||||
function Rectangle3D(x, y, z, Length, Width: real; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(x, y, z, Length, Width: real; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width, нормалью Normal
|
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width, нормалью Normal
|
||||||
function Rectangle3D(p: Point3D; Length, Width: real; Normal: Vector3D; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(p: Point3D; Length, Width: real; Normal: Vector3D; m: Material := nil): RectangleT;
|
||||||
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width
|
/// Возвращает 3D-прямоугольник с центром в точке p длины Length, ширины Width
|
||||||
function Rectangle3D(p: Point3D; Length, Width: real; m: Material := DefaultMaterial): RectangleT;
|
function Rectangle3D(p: Point3D; Length, Width: real; m: Material := nil): RectangleT;
|
||||||
|
|
||||||
/// Загружает модель из файла в форматах .obj, .3ds, .lwo, .objz, .stl, .off и отображает ее в точке (x, y, z)
|
/// Загружает модель из файла в форматах .obj, .3ds, .lwo, .objz, .stl, .off и отображает ее в точке (x, y, z)
|
||||||
function FileModel3D(x, y, z: real; fname: string; m: Material): FileModelT;
|
function FileModel3D(x, y, z: real; fname: string; m: Material): FileModelT;
|
||||||
|
|
@ -3305,53 +3307,69 @@ function FileModel3D(x, y, z: real; fname: string; m: Material): FileModelT;
|
||||||
function FileModel3D(p: Point3D; fname: string; m: Material): FileModelT;
|
function FileModel3D(p: Point3D; fname: string; m: Material): FileModelT;
|
||||||
|
|
||||||
/// Возвращает правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function Prism(x, y, z: real; Sides: integer; Height, Radius: real; m: Material := DefaultMaterial): PrismT;
|
function Prism(x, y, z: real; Sides: integer; Height, Radius: real; m: Material := nil): PrismT;
|
||||||
/// Возвращает правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function Prism(p: Point3D; Sides: integer; Height, Radius: real; m: Material := DefaultMaterial): PrismT;
|
function Prism(p: Point3D; Sides: integer; Height, Radius: real; m: Material := nil): PrismT;
|
||||||
/// Возвращает проволочную правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
/// Возвращает проволочную правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
||||||
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real := 1.2; c: Color := GrayColor(64)): PrismTWireFrame;
|
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame;
|
||||||
|
/// Возвращает проволочную правильную призму с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
||||||
|
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real := 1.2): PrismTWireFrame;
|
||||||
/// Возвращает проволочную правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
/// Возвращает проволочную правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
||||||
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real := 1.2; c: Color := GrayColor(64)): PrismTWireFrame;
|
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame;
|
||||||
|
/// Возвращает проволочную правильную призму с центром основания в точке p, количеством сторон Sides, высотой Height, радиусом Radius и толщиной проволоки Thickness
|
||||||
|
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real := 1.2): PrismTWireFrame;
|
||||||
/// Возвращает правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function Pyramid(x, y, z: real; Sides: integer; Height, Radius: real; m: Material := DefaultMaterial): PyramidT;
|
function Pyramid(x, y, z: real; Sides: integer; Height, Radius: real; m: Material := nil): PyramidT;
|
||||||
/// Возвращает правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function Pyramid(p: Point3D; Sides: integer; Height, Radius: real; m: Material := DefaultMaterial): PyramidT;
|
function Pyramid(p: Point3D; Sides: integer; Height, Radius: real; m: Material := nil): PyramidT;
|
||||||
/// Возвращает проволочную правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает проволочную правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real := 1.2; c: Color := GrayColor(64)): PyramidTWireFrame;
|
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame;
|
||||||
|
/// Возвращает проволочную правильную пирамиду с центром основания в точке (x, y, z), количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
|
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real := 1.2): PyramidTWireFrame;
|
||||||
/// Возвращает проволочную правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
/// Возвращает проволочную правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real := 1.2; c: Color := GrayColor(64)): PyramidTWireFrame;
|
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame;
|
||||||
|
/// Возвращает проволочную правильную пирамиду с центром основания в точке p, количеством сторон Sides, высотой Height и радиусом Radius
|
||||||
|
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real := 1.2): PyramidTWireFrame;
|
||||||
/// Возвращает лего-деталь с центром в точке (x, y, z), размера (Rows, Columns, Height), измеряемом в количестве кирпичиков по каждой размерности
|
/// Возвращает лего-деталь с центром в точке (x, y, z), размера (Rows, Columns, Height), измеряемом в количестве кирпичиков по каждой размерности
|
||||||
function Lego(x, y, z: real; Rows, Columns, Height: integer; m: Material := DefaultMaterial): LegoT;
|
function Lego(x, y, z: real; Rows, Columns, Height: integer; m: Material := nil): LegoT;
|
||||||
/// Возвращает икосаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
/// Возвращает икосаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
||||||
function Icosahedron(x, y, z, Radius: real; m: Material := DefaultMaterial): IcosahedronT;
|
function Icosahedron(x, y, z, Radius: real; m: Material := nil): IcosahedronT;
|
||||||
/// Возвращает додекаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
/// Возвращает додекаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
||||||
function Dodecahedron(x, y, z, Radius: real; m: Material := DefaultMaterial): DodecahedronT;
|
function Dodecahedron(x, y, z, Radius: real; m: Material := nil): DodecahedronT;
|
||||||
/// Возвращает тетраэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
/// Возвращает тетраэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
||||||
function Tetrahedron(x, y, z, Radius: real; m: Material := DefaultMaterial): TetrahedronT;
|
function Tetrahedron(x, y, z, Radius: real; m: Material := nil): TetrahedronT;
|
||||||
/// Возвращает октаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
/// Возвращает октаэдр с центром в точке (x, y, z) и радиусом описанной окружности Radius
|
||||||
function Octahedron(x, y, z, Radius: real; m: Material := DefaultMaterial): OctahedronT;
|
function Octahedron(x, y, z, Radius: real; m: Material := nil): OctahedronT;
|
||||||
/// Возвращает икосаэдр с центром в точке p и радиусом описанной окружности Radius
|
/// Возвращает икосаэдр с центром в точке p и радиусом описанной окружности Radius
|
||||||
function Icosahedron(p: Point3D; Radius: real; m: Material := DefaultMaterial): IcosahedronT;
|
function Icosahedron(p: Point3D; Radius: real; m: Material := nil): IcosahedronT;
|
||||||
/// Возвращает додекаэдр с центром в точке p и радиусом описанной окружности Radius
|
/// Возвращает додекаэдр с центром в точке p и радиусом описанной окружности Radius
|
||||||
function Dodecahedron(p: Point3D; Radius: real; m: Material := DefaultMaterial): DodecahedronT;
|
function Dodecahedron(p: Point3D; Radius: real; m: Material := nil): DodecahedronT;
|
||||||
/// Возвращает тетраэдр с центром в точке p и радиусом описанной окружности Radius
|
/// Возвращает тетраэдр с центром в точке p и радиусом описанной окружности Radius
|
||||||
function Tetrahedron(p: Point3D; Radius: real; m: Material := DefaultMaterial): TetrahedronT;
|
function Tetrahedron(p: Point3D; Radius: real; m: Material := nil): TetrahedronT;
|
||||||
/// Возвращает октаэдр с центром в точке p и радиусом описанной окружности Radius
|
/// Возвращает октаэдр с центром в точке p и радиусом описанной окружности Radius
|
||||||
function Octahedron(p: Point3D; Radius: real; m: Material := DefaultMaterial): OctahedronT;
|
function Octahedron(p: Point3D; Radius: real; m: Material := nil): OctahedronT;
|
||||||
/// Возвращает набор отрезков, задаваемых последовательностью точек points, толщиной Thickness, заданного цвета. Количество точек должно быть четным
|
/// Возвращает набор отрезков, задаваемых последовательностью точек points, толщиной Thickness, заданного цвета. Количество точек должно быть четным
|
||||||
function Segments3D(points: sequence of Point3D; Thickness: real := 1.2; c: Color := GrayColor(64)): SegmentsT;
|
function Segments3D(points: sequence of Point3D; Thickness: real; c: Color): SegmentsT;
|
||||||
|
/// Возвращает набор отрезков, задаваемых последовательностью точек points, толщиной Thickness. Количество точек должно быть четным
|
||||||
|
function Segments3D(points: sequence of Point3D; Thickness: real := 1.2): SegmentsT;
|
||||||
/// Возвращает ломаную, задаваемую последовательностью точек points, толщиной Thickness, заданного цвета
|
/// Возвращает ломаную, задаваемую последовательностью точек points, толщиной Thickness, заданного цвета
|
||||||
function Polyline3D(points: sequence of Point3D; Thickness: real := 1.2; c: Color := GrayColor(64)): SegmentsT;
|
function Polyline3D(points: sequence of Point3D; Thickness: real; c: Color): SegmentsT;
|
||||||
|
/// Возвращает ломаную, задаваемую последовательностью точек points, толщиной Thickness
|
||||||
|
function Polyline3D(points: sequence of Point3D; Thickness: real := 1.2): SegmentsT;
|
||||||
/// Возвращает замкнутую ломаную, задаваемую последовательностью точек points, толщиной Thickness, заданного цвета
|
/// Возвращает замкнутую ломаную, задаваемую последовательностью точек points, толщиной Thickness, заданного цвета
|
||||||
function Polygon3D(points: sequence of Point3D; Thickness: real := 1.2; c: Color := GrayColor(64)): SegmentsT;
|
function Polygon3D(points: sequence of Point3D; Thickness: real; c: Color): SegmentsT;
|
||||||
|
/// Возвращает замкнутую ломаную, задаваемую последовательностью точек points, толщиной Thickness
|
||||||
|
function Polygon3D(points: sequence of Point3D; Thickness: real := 1.2): SegmentsT;
|
||||||
/// Возвращает отрезок из точки p1 в точку p2 толщиной Thickness заданного цвета
|
/// Возвращает отрезок из точки p1 в точку p2 толщиной Thickness заданного цвета
|
||||||
function Segment3D(p1, p2: Point3D; Thickness: real := 1.2; c: Color := GrayColor(64)): SegmentsT;
|
function Segment3D(p1, p2: Point3D; Thickness: real; c: Color): SegmentsT;
|
||||||
|
/// Возвращает отрезок из точки p1 в точку p2 толщиной Thickness заданного цвета
|
||||||
|
function Segment3D(p1, p2: Point3D; Thickness: real := 1.2): SegmentsT;
|
||||||
/// Возвращает тор (бублик) с центром в точке (x, y, z), диаметром Diameter и диаметром трубы TubeDiameter
|
/// Возвращает тор (бублик) с центром в точке (x, y, z), диаметром Diameter и диаметром трубы TubeDiameter
|
||||||
function Torus(x, y, z, Diameter, TubeDiameter: real; m: Material := DefaultMaterial): TorusT;
|
function Torus(x, y, z, Diameter, TubeDiameter: real; m: Material := nil): TorusT;
|
||||||
/// Возвращает тор (бублик) с центром в точке p, диаметром Diameter и диаметром трубы TubeDiameter
|
/// Возвращает тор (бублик) с центром в точке p, диаметром Diameter и диаметром трубы TubeDiameter
|
||||||
function Torus(p: Point3D; Diameter, TubeDiameter: real; m: Material := DefaultMaterial): TorusT;
|
function Torus(p: Point3D; Diameter, TubeDiameter: real; m: Material := nil): TorusT;
|
||||||
/// Возвращает треугольник, соединяющий точки p1, p2, p3
|
/// Возвращает треугольник, соединяющий точки p1, p2, p3
|
||||||
function Triangle(p1, p2, p3: Point3D; m: Material := DefaultMaterial): TriangleT;
|
function Triangle(p1, p2, p3: Point3D; m: Material := nil): TriangleT;
|
||||||
|
|
||||||
// Конец примитивов
|
// Конец примитивов
|
||||||
//------------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------------
|
||||||
|
|
@ -4116,8 +4134,6 @@ function Group(en: sequence of Object3D): Group3D := Inv(()->Group3D.Create(0, 0
|
||||||
|
|
||||||
function Sphere(x, y, z, Radius: real; m: Material): SphereT := Inv(()->SphereT.Create(x, y, z, Radius, m));
|
function Sphere(x, y, z, Radius: real; m: Material): SphereT := Inv(()->SphereT.Create(x, y, z, Radius, m));
|
||||||
|
|
||||||
function Sphere(x, y, z, Radius: real): SphereT := Sphere(x, y, z, Radius, DefaultMaterial);
|
|
||||||
|
|
||||||
function Sphere(center: Point3D; Radius: real; m: Material) := Sphere(center.x, center.y, center.z, Radius, m);
|
function Sphere(center: Point3D; Radius: real; m: Material) := Sphere(center.x, center.y, center.z, Radius, m);
|
||||||
|
|
||||||
function Ellipsoid(x, y, z, RadiusX, RadiusY, RadiusZ: real; m: Material): EllipsoidT := Inv(()->EllipsoidT.Create(x, y, z, RadiusX, RadiusY, RadiusZ, m));
|
function Ellipsoid(x, y, z, RadiusX, RadiusY, RadiusZ: real; m: Material): EllipsoidT := Inv(()->EllipsoidT.Create(x, y, z, RadiusX, RadiusY, RadiusZ, m));
|
||||||
|
|
@ -4192,8 +4208,14 @@ function CoordinateSystem(ArrowsLength: real) := CoordinateSystem(arrowslength,
|
||||||
|
|
||||||
function Text3D(x, y, z: real; Text: string; Height: real; fontname: string; c: Color): TextT := Inv(()->TextT.Create(x, y, z, text, height, fontname, c));
|
function Text3D(x, y, z: real; Text: string; Height: real; fontname: string; c: Color): TextT := Inv(()->TextT.Create(x, y, z, text, height, fontname, c));
|
||||||
|
|
||||||
|
function Text3D(x, y, z: real; Text: string; Height: real; FontName: string): TextT
|
||||||
|
:= Text3D(x, y, z, Text, Height, FontName, Colors.Black);
|
||||||
|
|
||||||
function Text3D(p: Point3D; Text: string; Height: real; fontname: string; c: Color) := Text3D(P.x, p.y, p.z, text, height, fontname, c);
|
function Text3D(p: Point3D; Text: string; Height: real; fontname: string; c: Color) := Text3D(P.x, p.y, p.z, text, height, fontname, c);
|
||||||
|
|
||||||
|
function Text3D(p: Point3D; Text: string; Height: real; FontName: string): TextT
|
||||||
|
:= Text3D(p, Text, Height, FontName, Colors.Black);
|
||||||
|
|
||||||
function Text3D(x, y, z: real; Text: string; Height: real; c: Color) := Text3D(x, y, z, text, height, 'Arial', c);
|
function Text3D(x, y, z: real; Text: string; Height: real; c: Color) := Text3D(x, y, z, text, height, 'Arial', c);
|
||||||
|
|
||||||
function Text3D(p: Point3D; Text: string; Height: real; c: Color) := Text3D(p.x, p.y, p.z, text, height, 'Arial', c);
|
function Text3D(p: Point3D; Text: string; Height: real; c: Color) := Text3D(p.x, p.y, p.z, text, height, 'Arial', c);
|
||||||
|
|
@ -4221,16 +4243,28 @@ function Prism(p: Point3D; Sides: integer; Height, Radius: real; m: Material): P
|
||||||
|
|
||||||
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame := Inv(()->PrismTWireFrame.Create(x, y, z, Sides, Radius, Height, thickness, c));
|
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame := Inv(()->PrismTWireFrame.Create(x, y, z, Sides, Radius, Height, thickness, c));
|
||||||
|
|
||||||
|
function PrismWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real): PrismTWireFrame
|
||||||
|
:= PrismWireFrame(x, y, z, Sides, Height, Radius, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame := PrismWireFrame(p.x, p.y, p.z, Sides, Height, Radius, thickness, c);
|
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PrismTWireFrame := PrismWireFrame(p.x, p.y, p.z, Sides, Height, Radius, thickness, c);
|
||||||
|
|
||||||
|
function PrismWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real): PrismTWireFrame
|
||||||
|
:= PrismWireFrame(p, Sides, Height, Radius, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function Pyramid(x, y, z: real; Sides: integer; Height, Radius: real; m: Material): PyramidT := Inv(()->PyramidT.Create(x, y, z, Sides, Radius, Height, m));
|
function Pyramid(x, y, z: real; Sides: integer; Height, Radius: real; m: Material): PyramidT := Inv(()->PyramidT.Create(x, y, z, Sides, Radius, Height, m));
|
||||||
|
|
||||||
function Pyramid(p: Point3D; Sides: integer; Height, Radius: real; m: Material): PyramidT := Pyramid(p.X, p.Y, p.Z, Sides, Height, Radius, m);
|
function Pyramid(p: Point3D; Sides: integer; Height, Radius: real; m: Material): PyramidT := Pyramid(p.X, p.Y, p.Z, Sides, Height, Radius, m);
|
||||||
|
|
||||||
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame := Inv(()->PyramidTWireFrame.Create(x, y, z, Sides, Radius, Height, thickness, c));
|
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame := Inv(()->PyramidTWireFrame.Create(x, y, z, Sides, Radius, Height, thickness, c));
|
||||||
|
|
||||||
|
function PyramidWireFrame(x, y, z: real; Sides: integer; Height, Radius: real; Thickness: real): PyramidTWireFrame
|
||||||
|
:= PyramidWireFrame(x, y, z, Sides, Height, Radius, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame := PyramidWireFrame(p.x, p.y, p.z, Sides, Height, Radius, thickness, c);
|
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real; c: Color): PyramidTWireFrame := PyramidWireFrame(p.x, p.y, p.z, Sides, Height, Radius, thickness, c);
|
||||||
|
|
||||||
|
function PyramidWireFrame(p: Point3D; Sides: integer; Height, Radius: real; Thickness: real): PyramidTWireFrame
|
||||||
|
:= PyramidWireFrame(p, Sides, Height, Radius, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function Lego(x, y, z: real; Rows, Columns, Height: integer; m: Material): LegoT := Inv(()->LegoT.Create(x, y, z, Rows, Columns, Height, m));
|
function Lego(x, y, z: real; Rows, Columns, Height: integer; m: Material): LegoT := Inv(()->LegoT.Create(x, y, z, Rows, Columns, Height, m));
|
||||||
|
|
||||||
function Icosahedron(x, y, z, Radius: real; m: Material): IcosahedronT := Inv(()->IcosahedronT.Create(x, y, z, 4 * Radius / Sqrt(2) / Sqrt(5 + Sqrt(5)), m));
|
function Icosahedron(x, y, z, Radius: real; m: Material): IcosahedronT := Inv(()->IcosahedronT.Create(x, y, z, 4 * Radius / Sqrt(2) / Sqrt(5 + Sqrt(5)), m));
|
||||||
|
|
@ -4251,6 +4285,18 @@ function Octahedron(p: Point3D; Radius: real; m: Material): OctahedronT := Octah
|
||||||
|
|
||||||
function Segments3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create(points, thickness, c));
|
function Segments3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create(points, thickness, c));
|
||||||
|
|
||||||
|
function Segments3D(points: sequence of Point3D; Thickness: real): SegmentsT
|
||||||
|
:= Segments3D(points, Thickness, GrayColor(64));
|
||||||
|
|
||||||
|
function Polyline3D(points: sequence of Point3D; Thickness: real): SegmentsT
|
||||||
|
:= Polyline3D(points, Thickness, GrayColor(64));
|
||||||
|
|
||||||
|
function Polygon3D(points: sequence of Point3D; Thickness: real): SegmentsT
|
||||||
|
:= Polygon3D(points, Thickness, GrayColor(64));
|
||||||
|
|
||||||
|
function Segment3D(p1, p2: Point3D; Thickness: real): SegmentsT
|
||||||
|
:= Segment3D(p1, p2, Thickness, GrayColor(64));
|
||||||
|
|
||||||
function Polyline3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create(points.Pairwise.SelectMany(x -> Seq(x[0], x[1])), thickness, c));
|
function Polyline3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create(points.Pairwise.SelectMany(x -> Seq(x[0], x[1])), thickness, c));
|
||||||
|
|
||||||
function Polygon3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create((points + points.First).Pairwise.SelectMany(x -> Seq(x[0], x[1])), thickness, c));
|
function Polygon3D(points: sequence of Point3D; thickness: real; c: Color): SegmentsT := Inv(()->SegmentsT.Create((points + points.First).Pairwise.SelectMany(x -> Seq(x[0], x[1])), thickness, c));
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue