GetOLEColorValue |

Funktionsname | dcl_GetOLEColorValue
Syntax | `(dcl_GetOLEColorValue AcadColor [als Color])`
Rückgabewert | OLEColor

Diese Funktion konvertiert einen AutoCAD-ACI-Farbwert bzw. eine Windows-Systemfarbe in einen OLEColor-Farbwert für Anwendungen mit ActiveX-Eigenschaften und -Methoden.

Bitte beachten Sie, dass der OLEColor-Farbwert entgegen der Beschreibung in der AutoLISP-Hilfe nicht mit der AutoLISP-Funktion (acad_truecolordlg) verwendet werden kann. Autodesk verwendet hier einen anderen Farbwert.

>     (setq lstRGB (list 123 234 56)) ;; Diese Farbe soll abgebildet werden
>     (setq lstRGBForAcad (reverse lstRGB)) ;; Die Liste der RGB-Farbe muss zunächst umgedreht werden
>     (setq intRGBForAcad (+ (+ (lsh (caddr lstRGBForAcad) 16) (lsh (cadr lstRGBForAcad) 8)) (car lstRGBForAcad))) ;; Daraus lässt sich der Farbwert ableiten
>     (acad_truecolordlg (cons 420 intRGBForAcad) nil)

Wollen Sie einem Bild-Steuerlemenent eine RGB-Farbe als Hintergrundfarbe zuweisen, verwenden Sie die Liste aus Rot, Grün, Blau direkt:

>     ;; Bei OpenDCL-Steuerelementen kann gleich die Liste zur Anwendung kommen
>     (setq lstRGBForODCL lstRGB)
>     (setq intRGBForODCL (+ (+ (lsh (caddr lstRGBForODCL) 16) (lsh (cadr lstRGBForODCL) 8)) (car lstRGBForODCL)))