(defun C:draw_globus (/ list-BLH list-result n nn x)
  ; паралели
  (setq nn -90)
  (repeat (/ 180 5)
    (setq n 0)
    (setq list-BLH nil)
    (repeat (/ 360 5)
      (setq list-BLH (append list-BLH (list(list nn n 0))))
      (setq n (+ n 5))
      )
    (setq list-result nil)
    (foreach x list-BLH
      (setq list-result (append list-result (list(calculation-XYZ-by-BLH x 6378245.0 6356863.0))))
      )
    (vla-put-Closed(vla-add3dPoly model_spece
		     (vlax-safearray-fill
		       (vlax-make-safearray vlax-vbDouble (cons 0 (1-(*(length list-result)3))))
		       (apply 'append (mapcar 'list (mapcar 'car list-result)
					      (mapcar 'cadr list-result)
					      (mapcar 'caddr list-result)))))
      :vlax-true)
    (setq nn (+ nn 5))
    )
  (setq n nil
	nn nil)
  ; меридианы
  (setq nn 0)
  (repeat (/ 360 5)
    (setq list-BLH nil)
    (setq n 0)
    (repeat (/ 360 5)
      (setq list-BLH (append list-BLH (list(list n nn 0))))
      (setq n (+ n 5))
      )
    (setq list-result nil)
    (foreach x list-BLH
      (setq list-result (append list-result (list(calculation-XYZ-by-BLH x 6378245.0 6356863.0))))
      )
    (vla-put-Closed(vla-add3dPoly model_spece
		     (vlax-safearray-fill
		       (vlax-make-safearray vlax-vbDouble (cons 0 (1-(*(length list-result)3))))
		       (apply 'append (mapcar 'list (mapcar 'car list-result)
					      (mapcar 'cadr list-result)
					      (mapcar 'caddr list-result)))))
      :vlax-true)
    (setq nn (+ nn 5))
    )
  (princ)
  )
(defun calculation-XYZ-by-BLH (point a b / Bcoor Lcoor Hcoor E2 N X Y Z)
  ; вычисление геодезических прямоугольных координат по криволинейным
  ; BL криволинейные координаты задаются в десятичных градусах H в метрах
  ; пример вызова (calculation-XYZ-by-BLH (list 45.0 55.0) 6378245.0 6356863.0)
  (setq Bcoor (nth 0 point))
  (setq Lcoor (nth 1 point))
  (setq Hcoor (nth 2 point))
  (if (= Hcoor nil) (setq Hcoor 0))
  (setq Bcoor (* Bcoor (/ pi 180)))
  (setq Lcoor (* Lcoor (/ pi 180)))
  (setq e2 (/(- (expt a 2)(expt b 2))(expt a 2)))
  (setq N(/ a (sqrt (- 1.0 (* e2 (expt (sin Bcoor) 2))))))
  (setq X (* (+ N Hcoor)(cos Bcoor)(cos Lcoor)))
  (setq Y (* (+ N Hcoor)(cos Bcoor)(sin Lcoor)))
  (setq Z (* (-(+ N Hcoor)(* N e2))(sin Bcoor)))
  (list X Y Z)
  )