(defun c:SANYA ( / osmode_old ang x y)
; STREAMING_CHUNK:Сохраняем настройки привязок...
;; Отключаем привязки, чтобы детали цветка не "прилипли" куда не надо
(setq osmode_old (getvar "OSMODE"))
(setvar "OSMODE" 0)
; STREAMING_CHUNK:Настраиваем 3D вид камеры...
;; Переключаем вид в 3D (Юго-Восточная изометрия)
(command "_.vpoint" "1,-1,1")
;; Включаем концептуальный визуальный стиль, чтобы объекты стали плотными и цветными
(command "_.vscurrent" "_C")
; STREAMING_CHUNK:Моделируем основание горшка...
;; === 1. ГОРШОК ===
;; Основная часть горшка (радиус 25, высота 30)
(command ".cylinder" '(0 0 0) 25 30)
(command ".chprop" (entlast) "" "_C" 8 "") ; Цвет 8 (Темно-серый)
;; Ободок горшка сверху
(command ".cylinder" '(0 0 30) 28 8)
(command ".chprop" (entlast) "" "_C" 9 "") ; Цвет 9 (Светло-серый)
;; Земля в горшке (чуть ниже края ободка)
(command ".cylinder" '(0 0 36) 26 2)
(command ".chprop" (entlast) "" "_C" 15 "") ; Темно-коричневый
; STREAMING_CHUNK:Выращиваем стебель и листья...
;; === 2. СТЕБЕЛЬ И ЛИСТЬЯ ===
;; Стебель из центра земли вверх
(command ".cylinder" '(0 0 38) 2 50)
(command ".chprop" (entlast) "" "_C" 3 "") ; Зеленый
;; Пара листиков (шарики на стебле)
(command ".sphere" '(6 0 55) 5)
(command ".chprop" (entlast) "" "C" 3 "")
(command ".sphere" '(-6 0 65) 5)
(command "_.chprop" (entlast) "" "_C" 3 "")
; STREAMING_CHUNK:Создаем бутон цветка...
;; === 3. СЕРДЦЕВИНА ЦВЕТКА ===
(command ".sphere" '(0 0 90) 10)
(command ".chprop" (entlast) "" "_C" 2 "") ; Желтый
; STREAMING_CHUNK:Раскладываем лепестки по кругу...
;; === 4. ЛЕПЕСТКИ (через математический цикл) ===
(setq ang 0)
(while (< ang 360)
;; Вычисляем координаты X и Y для круга с радиусом 14
(setq x (* 14 (cos (* pi (/ ang 180.0)))))
(setq y (* 14 (sin (* pi (/ ang 180.0)))))
;; Ставим лепесток
(command ".sphere" (list x y 90) 7.5)
(command ".chprop" (entlast) "" "_C" 6 "") ; Маджента (розово-фиолетовый)
;; Шаг в 45 градусов (получится 8 лепестков)
(setq ang (+ ang 45))
)
; STREAMING_CHUNK:Пишем именную подпись Саня КГ...
;; === 5. ТЕКСТ ===
;; Справа и чуть спереди от основания горшка (на полу)
(entmakex (list '(0 . "TEXT")
(list 10 35 -20 0) ;; X=35 (справа), Y=-20 (вперед к зрителю)
(cons 40 12) ;; Высота букв
(cons 1 "Саня КГ") ;; Сам текст
'(62 . 1) ;; Цвет 1 (Ярко-красный)
))
; STREAMING_CHUNK:Завершение работы...
;; Восстанавливаем привязки
(setvar "OSMODE" osmode_old)
(princ "\n*** 3D цветок 'Саня КГ' успешно посажен! ***")
(princ "\nСовет: Зажмите Shift + Колесико мыши и подвигайте мышкой, чтобы покрутить камеру!")
(princ)
)