Тема: Как сделать активным слой?

Подскажите кусочек кода на VBA., чтобы вычертить к примеру полилинию, а затем кинуть ее в слой "sloy"

Re: Как сделать активным слой?

Sub Example_AddLine()
    ' This example adds a line in model space
    Dim lineObj As AcadLine
    Dim startPoint(0 To 2) As Double
    Dim endPoint(0 To 2) As Double
    ' Define the start and end points for the line
    startPoint(0) = 1#: startPoint(1) = 1#: startPoint(2) = 0#
    endPoint(0) = 5#: endPoint(1) = 5#: endPoint(2) = 0#
    ' Create the line in model space
    Set lineObj = ThisDrawing.ModelSpace.AddLine(startPoint, endPoint)
    [b]
    lineObj.Layer = "sloy"
    lineObj.Update
    [/b]
    ZoomAll
End Sub

Re: Как сделать активным слой?

Извиняюсь что название темы не так дал!
To Boxa  - огромное спасибо!

Re: Как сделать активным слой?

Еще вопрос - endPoint(1) = 5#    Знак # - обязательно? Я делал без него - работает! Может возможны какие-либо последствия если его не поставить?

Re: Как сделать активным слой?

> Александр
добавляя # после числа, ты явно указываешь что это число целое.

Re: Как сделать активным слой?

The default for second and subsequent points is relative polar coordinates (relative Cartesian for RECTANG). There is no need to type the at sign (@). If you want to use absolute coordinates, use the pound sign (#) prefix. For example, to move an object to the origin, for the second point prompt, enter #0,0.

фрагмент справки.

Re: Как сделать активным слой?

Спасиб еще раз!  Дай Вам бог здоровья!

Re: Как сделать активным слой?

Насколько я в курсе правил синтаксиса БАСИКа значки #,%,& служат для явного указания типа переменной или числа.

Single (single-precision floating-point) variables are stored as IEEE 32-bit (4-byte) floating-point numbers, ranging in value from -3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values. Thetype-declaration character for Single is the exclamation point (!).
Double (double-precision floating-point) variables are stored as IEEE 64-bit (8-byte) floating-point numbers ranging in value from -1.79769313486232E308 to -4.94065645841247E-324 for negative values and from 4.94065645841247E-324 to 1.79769313486232E308 for positive values. Thetype-declaration character for Double is the number sign (#).
The codes forString characters range from 0?255. The first 128 characters (0?127) of the character set correspond to the letters and symbols on a standard U.S. keyboard. These first 128 characters are the same as those defined by theASCII character set. The second 128 characters (128?255) represent special characters, such as letters in international alphabets, accents, currency symbols, and fractions. Thetype-declaration character for String is the dollar sign ($).
Integer variables are stored as 16-bit (2-byte) numbers ranging in value from -32,768 to 32,767. Thetype-declaration character for Integer is the percent sign (%).
Long (long integer) variables are stored as signed 32-bit (4-byte) numbers ranging in value from -2,147,483,648 to 2,147,483,647. Thetype-declaration character for Long is the ampersand (&).

Выражение endPoint(1) = 5# будет работать и так без значка #, поскольку endPoint(1) имеет тип Double и при присвоении производится приведение типа.

Re: Как сделать активным слой?

Нда... апсыбся... просто никогда этими значками не пользовался прописывая тип переменной явно.
Спасибо за замечание.

Re: Как сделать активным слой?

Да и не надо ими пользоваться.