@mlightcad/graphic-interface 3.5.4 → 3.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/graphic-interface.umd.cjs +1 -1
- package/lib/AcGiContext.d.ts +52 -0
- package/lib/AcGiContext.d.ts.map +1 -0
- package/lib/AcGiContext.js +76 -0
- package/lib/AcGiContext.js.map +1 -0
- package/lib/AcGiRenderer.d.ts +6 -0
- package/lib/AcGiRenderer.d.ts.map +1 -1
- package/lib/AcGiSubEntityTraits.d.ts +4 -7
- package/lib/AcGiSubEntityTraits.d.ts.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(e,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("@mlightcad/geometry-engine")):typeof define=="function"&&define.amd?define(["exports","@mlightcad/geometry-engine"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e["graphic-interface"]={},e.geometryEngine))})(this,function(e,t){"use strict";var I=(_=>(_.ClosedFilled="",_.Dot="_DOT",_.DotSmall="_DOTSMALL",_.DotBlank="_DOTBLANK",_.Origin="_ORIGIN",_.Origin2="_ORIGIN2",_.Open="_OPEN",_.Open90="_OPEN90",_.Open30="_OPEN30",_.Closed="_CLOSED",_.Small="_SMALL",_.None="_NONE",_.Oblique="_OBLIQUE",_.BoxFilled="_BOXFILLED",_.Box="_BOXBLANK",_.ClosedBlank="_CLOSEDBLANK",_.DatumBlank="_DATUMBLANK",_.DatumFilled="_DATUMFILLED",_.Integral="_INTEGRAL",_.ArchTick="_ARCHTICK",_))(I||{}),E=(_=>(_[_.ByBlock=-2]="ByBlock",_[_.ByDIPs=-4]="ByDIPs",_[_.ByLayer=-1]="ByLayer",_[_.ByLineWeightDefault=-3]="ByLineWeightDefault",_[_.LineWeight000=0]="LineWeight000",_[_.LineWeight005=5]="LineWeight005",_[_.LineWeight009=9]="LineWeight009",_[_.LineWeight013=13]="LineWeight013",_[_.LineWeight015=15]="LineWeight015",_[_.LineWeight018=18]="LineWeight018",_[_.LineWeight020=20]="LineWeight020",_[_.LineWeight025=25]="LineWeight025",_[_.LineWeight030=30]="LineWeight030",_[_.LineWeight035=35]="LineWeight035",_[_.LineWeight040=40]="LineWeight040",_[_.LineWeight050=50]="LineWeight050",_[_.LineWeight053=53]="LineWeight053",_[_.LineWeight060=60]="LineWeight060",_[_.LineWeight070=70]="LineWeight070",_[_.LineWeight080=80]="LineWeight080",_[_.LineWeight090=90]="LineWeight090",_[_.LineWeight100=100]="LineWeight100",_[_.LineWeight106=106]="LineWeight106",_[_.LineWeight120=120]="LineWeight120",_[_.LineWeight140=140]="LineWeight140",_[_.LineWeight158=158]="LineWeight158",_[_.LineWeight200=200]="LineWeight200",_[_.LineWeight211=211]="LineWeight211",_))(E||{});const d=0,u=16777215,g=0,L=16777215,H=128,a={foregroundOnDark:u,foregroundOnLight:g,backgroundIsDark:!0,fallbackRgb:16777215};function h(_){const n=_>>16&255,s=_>>8&255,b=_&255;return .299*n+.587*s+.114*b>H}function r(_=d){return{foregroundOnDark:u,foregroundOnLight:g,backgroundIsDark:!h(_),fallbackRgb:16777215}}function f(_){return _?g:u}function T(_){const n=r(_);return n.backgroundIsDark?n.foregroundOnDark:n.foregroundOnLight}function B(_,n){const s=_.color;return s.isForeground?n.backgroundIsDark?n.foregroundOnDark:n.foregroundOnLight:s.isByLayer||s.isByBlock?n.fallbackRgb??16777215:s.RGB??n.fallbackRgb??16777215}function N(_,n){return B(_,r(n))}var D=(_=>(_[_.LEFT_TO_RIGHT=1]="LEFT_TO_RIGHT",_[_.RIGHT_TO_LEFT=2]="RIGHT_TO_LEFT",_[_.TOP_TO_BOTTOM=3]="TOP_TO_BOTTOM",_[_.BOTTOM_TO_TOP=4]="BOTTOM_TO_TOP",_[_.BY_STYLE=5]="BY_STYLE",_))(D||{}),C=(_=>(_[_.TopLeft=1]="TopLeft",_[_.TopCenter=2]="TopCenter",_[_.TopRight=3]="TopRight",_[_.MiddleLeft=4]="MiddleLeft",_[_.MiddleCenter=5]="MiddleCenter",_[_.MiddleRight=6]="MiddleRight",_[_.BottomLeft=7]="BottomLeft",_[_.BottomCenter=8]="BottomCenter",_[_.BottomRight=9]="BottomRight",_[_.BaselineLeft=10]="BaselineLeft",_[_.BaselineCenter=11]="BaselineCenter",_[_.BaselineRight=12]="BaselineRight",_))(C||{}),R=(_=>(_[_.OPTIMIZED_2D=0]="OPTIMIZED_2D",_[_.WIREFRAME=1]="WIREFRAME",_[_.HIDDEN_LINE=2]="HIDDEN_LINE",_[_.FLAT_SHADED=3]="FLAT_SHADED",_[_.GOURAUD_SHADED=4]="GOURAUD_SHADED",_[_.FLAT_SHADED_WITH_WIREFRAME=5]="FLAT_SHADED_WITH_WIREFRAME",_[_.GOURAUD_SHADED_WITH_WIREFRAME=6]="GOURAUD_SHADED_WITH_WIREFRAME",_))(R||{}),l=(_=>(_[_.NON_ORTHOGRAPHIC=0]="NON_ORTHOGRAPHIC",_[_.TOP=1]="TOP",_[_.BOTTOM=2]="BOTTOM",_[_.FRONT=3]="FRONT",_[_.BACK=4]="BACK",_[_.LEFT=5]="LEFT",_[_.RIGHT=6]="RIGHT",_))(l||{}),o=(_=>(_[_.ONE_DISTANT_LIGHT=0]="ONE_DISTANT_LIGHT",_[_.TWO_DISTANT_LIGHTS=1]="TWO_DISTANT_LIGHTS",_))(o||{});class O{constructor(){this._number=-1,this._id="",this._groupId="",this._centerPoint=new t.AcGePoint3d,this._height=0,this._width=0,this._viewCenter=new t.AcGePoint3d,this._viewHeight=0}get number(){return this._number}set number(n){this._number=n}get id(){return this._id}set id(n){this._id=n}get groupId(){return this._groupId}set groupId(n){this._groupId=n}get centerPoint(){return this._centerPoint}set centerPoint(n){this._centerPoint.copy(n)}get height(){return this._height}set height(n){this._height=n}get width(){return this._width}set width(n){this._width=n}get box(){const n=new t.AcGeBox2d;return n.setFromCenterAndSize(this.centerPoint,{x:this.width,y:this.height}),n}get viewCenter(){return this._viewCenter}set viewCenter(n){this._viewCenter.copy(n)}get viewHeight(){return this._viewHeight}set viewHeight(n){this._viewHeight=n}get viewWidth(){return this.viewHeight*(this.width/this.height)}get viewBox(){const n=new t.AcGeBox2d;return n.setFromCenterAndSize(this.viewCenter,{x:this.viewWidth,y:this.viewHeight}),n}clone(){const n=new O;return n.id=this.id,n.groupId=this.groupId,n.number=this.number,n.centerPoint.copy(this.centerPoint),n.height=this.height,n.width=this.width,n.viewCenter.copy(this.viewCenter),n.viewHeight=this.viewHeight,n}copy(n){return this.id=n.id,this.groupId=n.groupId,this.number=n.number,this.centerPoint.copy(n.centerPoint),this.height=n.height,this.width=n.width,this.viewCenter.copy(n.viewCenter),this.viewHeight=n.viewHeight,this}}e.ACGI_DARK_THEME_FOREGROUND=u,e.ACGI_LIGHT_THEME_FOREGROUND=g,e.ACGI_MODEL_SPACE_BACKGROUND=d,e.ACGI_PAPER_SPACE_BACKGROUND=L,e.AcGiArrowType=I,e.AcGiDefaultLightingType=o,e.AcGiLineWeight=E,e.AcGiMTextAttachmentPoint=C,e.AcGiMTextFlowDirection=D,e.AcGiOrthographicType=l,e.AcGiRenderMode=R,e.AcGiViewport=O,e.DEFAULT_ACGI_CONTEXT=a,e.acgiBuildContext=r,e.acgiContrastingForegroundColor=f,e.acgiForegroundColorForBackground=T,e.acgiIsLightBackground=h,e.acgiResolveSubEntityTraitsRgb=B,e.acgiResolveSubEntityTraitsRgbFromBackground=N,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { AcGiSubEntityTraits } from './AcGiSubEntityTraits';
|
|
2
|
+
/**
|
|
3
|
+
* Draw-time context used to resolve semantic entity colors into pixel RGB values.
|
|
4
|
+
*
|
|
5
|
+
* ACI 7 (foreground / contrast color) depends on the current background, so RGB
|
|
6
|
+
* resolution must happen in the renderer with this context rather than on traits.
|
|
7
|
+
*/
|
|
8
|
+
export interface AcGiContext {
|
|
9
|
+
/** RGB used when the resolved color is foreground (ACI 7) on a dark background. */
|
|
10
|
+
foregroundOnDark: number;
|
|
11
|
+
/** RGB used when the resolved color is foreground (ACI 7) on a light background. */
|
|
12
|
+
foregroundOnLight: number;
|
|
13
|
+
/** Whether the current draw background is dark. */
|
|
14
|
+
backgroundIsDark: boolean;
|
|
15
|
+
/** Fallback RGB when the resolved color has no concrete RGB value. */
|
|
16
|
+
fallbackRgb?: number;
|
|
17
|
+
}
|
|
18
|
+
/** AutoCAD model-space default background: RGB(0, 0, 0). */
|
|
19
|
+
export declare const ACGI_MODEL_SPACE_BACKGROUND = 0;
|
|
20
|
+
/** ACI-7 foreground on a dark canvas background. */
|
|
21
|
+
export declare const ACGI_DARK_THEME_FOREGROUND = 16777215;
|
|
22
|
+
/** ACI-7 foreground on a light canvas background. */
|
|
23
|
+
export declare const ACGI_LIGHT_THEME_FOREGROUND = 0;
|
|
24
|
+
/** AutoCAD paper-space default background: RGB(255, 255, 255). */
|
|
25
|
+
export declare const ACGI_PAPER_SPACE_BACKGROUND = 16777215;
|
|
26
|
+
/** Default draw context matching a dark AutoCAD model-space background. */
|
|
27
|
+
export declare const DEFAULT_ACGI_CONTEXT: AcGiContext;
|
|
28
|
+
/**
|
|
29
|
+
* Whether a packed RGB colour is perceptually light (paper-like).
|
|
30
|
+
*/
|
|
31
|
+
export declare function acgiIsLightBackground(color: number): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Builds draw-time {@link AcGiContext} from the current canvas background.
|
|
34
|
+
*/
|
|
35
|
+
export declare function acgiBuildContext(backgroundColor?: number): AcGiContext;
|
|
36
|
+
/**
|
|
37
|
+
* ACI-7 foreground that contrasts with a light or dark UI theme flag.
|
|
38
|
+
*/
|
|
39
|
+
export declare function acgiContrastingForegroundColor(isLight: boolean): number;
|
|
40
|
+
/**
|
|
41
|
+
* ACI-7 foreground that contrasts with the canvas background.
|
|
42
|
+
*/
|
|
43
|
+
export declare function acgiForegroundColorForBackground(backgroundColor: number): number;
|
|
44
|
+
/**
|
|
45
|
+
* Resolves {@link AcGiSubEntityTraits.color} to a pixel RGB value.
|
|
46
|
+
*/
|
|
47
|
+
export declare function acgiResolveSubEntityTraitsRgb(traits: AcGiSubEntityTraits, context: AcGiContext): number;
|
|
48
|
+
/**
|
|
49
|
+
* Convenience wrapper when only the canvas background is available.
|
|
50
|
+
*/
|
|
51
|
+
export declare function acgiResolveSubEntityTraitsRgbFromBackground(traits: AcGiSubEntityTraits, backgroundColor: number): number;
|
|
52
|
+
//# sourceMappingURL=AcGiContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcGiContext.d.ts","sourceRoot":"","sources":["../src/AcGiContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,mFAAmF;IACnF,gBAAgB,EAAE,MAAM,CAAA;IACxB,oFAAoF;IACpF,iBAAiB,EAAE,MAAM,CAAA;IACzB,mDAAmD;IACnD,gBAAgB,EAAE,OAAO,CAAA;IACzB,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,4DAA4D;AAC5D,eAAO,MAAM,2BAA2B,IAAW,CAAA;AAEnD,oDAAoD;AACpD,eAAO,MAAM,0BAA0B,WAAW,CAAA;AAElD,qDAAqD;AACrD,eAAO,MAAM,2BAA2B,IAAW,CAAA;AAEnD,kEAAkE;AAClE,eAAO,MAAM,2BAA2B,WAAW,CAAA;AAKnD,2EAA2E;AAC3E,eAAO,MAAM,oBAAoB,EAAE,WAKlC,CAAA;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,eAAe,GAAE,MAAoC,GACpD,WAAW,CAOb;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAEvE;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,eAAe,EAAE,MAAM,GACtB,MAAM,CAKR;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,WAAW,GACnB,MAAM,CAWR;AAED;;GAEG;AACH,wBAAgB,2CAA2C,CACzD,MAAM,EAAE,mBAAmB,EAC3B,eAAe,EAAE,MAAM,GACtB,MAAM,CAKR"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/** AutoCAD model-space default background: RGB(0, 0, 0). */
|
|
2
|
+
export var ACGI_MODEL_SPACE_BACKGROUND = 0x000000;
|
|
3
|
+
/** ACI-7 foreground on a dark canvas background. */
|
|
4
|
+
export var ACGI_DARK_THEME_FOREGROUND = 0xffffff;
|
|
5
|
+
/** ACI-7 foreground on a light canvas background. */
|
|
6
|
+
export var ACGI_LIGHT_THEME_FOREGROUND = 0x000000;
|
|
7
|
+
/** AutoCAD paper-space default background: RGB(255, 255, 255). */
|
|
8
|
+
export var ACGI_PAPER_SPACE_BACKGROUND = 0xffffff;
|
|
9
|
+
/** ITU-R BT.601 luma threshold used by {@link acgiIsLightBackground}. */
|
|
10
|
+
var ACGI_LIGHT_BACKGROUND_LUMA_THRESHOLD = 128;
|
|
11
|
+
/** Default draw context matching a dark AutoCAD model-space background. */
|
|
12
|
+
export var DEFAULT_ACGI_CONTEXT = {
|
|
13
|
+
foregroundOnDark: ACGI_DARK_THEME_FOREGROUND,
|
|
14
|
+
foregroundOnLight: ACGI_LIGHT_THEME_FOREGROUND,
|
|
15
|
+
backgroundIsDark: true,
|
|
16
|
+
fallbackRgb: 0xffffff
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Whether a packed RGB colour is perceptually light (paper-like).
|
|
20
|
+
*/
|
|
21
|
+
export function acgiIsLightBackground(color) {
|
|
22
|
+
var r = (color >> 16) & 0xff;
|
|
23
|
+
var g = (color >> 8) & 0xff;
|
|
24
|
+
var b = color & 0xff;
|
|
25
|
+
return (0.299 * r + 0.587 * g + 0.114 * b > ACGI_LIGHT_BACKGROUND_LUMA_THRESHOLD);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Builds draw-time {@link AcGiContext} from the current canvas background.
|
|
29
|
+
*/
|
|
30
|
+
export function acgiBuildContext(backgroundColor) {
|
|
31
|
+
if (backgroundColor === void 0) { backgroundColor = ACGI_MODEL_SPACE_BACKGROUND; }
|
|
32
|
+
return {
|
|
33
|
+
foregroundOnDark: ACGI_DARK_THEME_FOREGROUND,
|
|
34
|
+
foregroundOnLight: ACGI_LIGHT_THEME_FOREGROUND,
|
|
35
|
+
backgroundIsDark: !acgiIsLightBackground(backgroundColor),
|
|
36
|
+
fallbackRgb: 0xffffff
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* ACI-7 foreground that contrasts with a light or dark UI theme flag.
|
|
41
|
+
*/
|
|
42
|
+
export function acgiContrastingForegroundColor(isLight) {
|
|
43
|
+
return isLight ? ACGI_LIGHT_THEME_FOREGROUND : ACGI_DARK_THEME_FOREGROUND;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* ACI-7 foreground that contrasts with the canvas background.
|
|
47
|
+
*/
|
|
48
|
+
export function acgiForegroundColorForBackground(backgroundColor) {
|
|
49
|
+
var context = acgiBuildContext(backgroundColor);
|
|
50
|
+
return context.backgroundIsDark
|
|
51
|
+
? context.foregroundOnDark
|
|
52
|
+
: context.foregroundOnLight;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Resolves {@link AcGiSubEntityTraits.color} to a pixel RGB value.
|
|
56
|
+
*/
|
|
57
|
+
export function acgiResolveSubEntityTraitsRgb(traits, context) {
|
|
58
|
+
var _a, _b, _c;
|
|
59
|
+
var color = traits.color;
|
|
60
|
+
if (color.isForeground) {
|
|
61
|
+
return context.backgroundIsDark
|
|
62
|
+
? context.foregroundOnDark
|
|
63
|
+
: context.foregroundOnLight;
|
|
64
|
+
}
|
|
65
|
+
if (color.isByLayer || color.isByBlock) {
|
|
66
|
+
return (_a = context.fallbackRgb) !== null && _a !== void 0 ? _a : 0xffffff;
|
|
67
|
+
}
|
|
68
|
+
return (_c = (_b = color.RGB) !== null && _b !== void 0 ? _b : context.fallbackRgb) !== null && _c !== void 0 ? _c : 0xffffff;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Convenience wrapper when only the canvas background is available.
|
|
72
|
+
*/
|
|
73
|
+
export function acgiResolveSubEntityTraitsRgbFromBackground(traits, backgroundColor) {
|
|
74
|
+
return acgiResolveSubEntityTraitsRgb(traits, acgiBuildContext(backgroundColor));
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=AcGiContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcGiContext.js","sourceRoot":"","sources":["../src/AcGiContext.ts"],"names":[],"mappings":"AAmBA,4DAA4D;AAC5D,MAAM,CAAC,IAAM,2BAA2B,GAAG,QAAQ,CAAA;AAEnD,oDAAoD;AACpD,MAAM,CAAC,IAAM,0BAA0B,GAAG,QAAQ,CAAA;AAElD,qDAAqD;AACrD,MAAM,CAAC,IAAM,2BAA2B,GAAG,QAAQ,CAAA;AAEnD,kEAAkE;AAClE,MAAM,CAAC,IAAM,2BAA2B,GAAG,QAAQ,CAAA;AAEnD,yEAAyE;AACzE,IAAM,oCAAoC,GAAG,GAAG,CAAA;AAEhD,2EAA2E;AAC3E,MAAM,CAAC,IAAM,oBAAoB,GAAgB;IAC/C,gBAAgB,EAAE,0BAA0B;IAC5C,iBAAiB,EAAE,2BAA2B;IAC9C,gBAAgB,EAAE,IAAI;IACtB,WAAW,EAAE,QAAQ;CACtB,CAAA;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAa;IACjD,IAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,IAAI,CAAA;IAC9B,IAAM,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAA;IAC7B,IAAM,CAAC,GAAG,KAAK,GAAG,IAAI,CAAA;IACtB,OAAO,CACL,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,oCAAoC,CACzE,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,eAAqD;IAArD,gCAAA,EAAA,6CAAqD;IAErD,OAAO;QACL,gBAAgB,EAAE,0BAA0B;QAC5C,iBAAiB,EAAE,2BAA2B;QAC9C,gBAAgB,EAAE,CAAC,qBAAqB,CAAC,eAAe,CAAC;QACzD,WAAW,EAAE,QAAQ;KACtB,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,8BAA8B,CAAC,OAAgB;IAC7D,OAAO,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,0BAA0B,CAAA;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAC9C,eAAuB;IAEvB,IAAM,OAAO,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAA;IACjD,OAAO,OAAO,CAAC,gBAAgB;QAC7B,CAAC,CAAC,OAAO,CAAC,gBAAgB;QAC1B,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAA;AAC/B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAC3C,MAA2B,EAC3B,OAAoB;;IAEpB,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;IAC1B,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACvB,OAAO,OAAO,CAAC,gBAAgB;YAC7B,CAAC,CAAC,OAAO,CAAC,gBAAgB;YAC1B,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAA;IAC/B,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACvC,OAAO,MAAA,OAAO,CAAC,WAAW,mCAAI,QAAQ,CAAA;IACxC,CAAC;IACD,OAAO,MAAA,MAAA,KAAK,CAAC,GAAG,mCAAI,OAAO,CAAC,WAAW,mCAAI,QAAQ,CAAA;AACrD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2CAA2C,CACzD,MAA2B,EAC3B,eAAuB;IAEvB,OAAO,6BAA6B,CAClC,MAAM,EACN,gBAAgB,CAAC,eAAe,CAAC,CAClC,CAAA;AACH,CAAC"}
|
package/lib/AcGiRenderer.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AcGeArea2d, AcGeCircArc3d, AcGeEllipseArc3d, AcGePoint3d, AcGePoint3dLike } from '@mlightcad/geometry-engine';
|
|
2
|
+
import { AcGiContext } from './AcGiContext';
|
|
2
3
|
import { AcGiEntity } from './AcGiEntity';
|
|
3
4
|
import { AcGiImageStyle } from './AcGiImageStyle';
|
|
4
5
|
import { AcGiPointStyle } from './AcGiPointStyle';
|
|
@@ -17,6 +18,11 @@ export interface AcGiRenderer<T extends AcGiEntity = AcGiEntity> {
|
|
|
17
18
|
* (color, layer, linetype, etc.) settings of the current geometry.
|
|
18
19
|
*/
|
|
19
20
|
get subEntityTraits(): AcGiSubEntityTraits;
|
|
21
|
+
/**
|
|
22
|
+
* Draw-time context for resolving semantic trait colors (for example ACI 7
|
|
23
|
+
* foreground) into pixel RGB values.
|
|
24
|
+
*/
|
|
25
|
+
get context(): AcGiContext;
|
|
20
26
|
/**
|
|
21
27
|
* Create one group
|
|
22
28
|
* @param entities Input entities to group together
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcGiRenderer.d.ts","sourceRoot":"","sources":["../src/AcGiRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,eAAe,EAChB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE9D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAEpD,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC7D;;;OAGG;IACH,IAAI,eAAe,IAAI,mBAAmB,CAAA;IAE1C;;;;OAIG;IACH,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IAEvB;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAEnD;;;;OAIG;IACH,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,CAAC,CAAA;IAElC;;;;OAIG;IACH,aAAa,CAAC,UAAU,EAAE,gBAAgB,GAAG,CAAC,CAAA;IAE9C;;;;OAIG;IACH,KAAK,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,CAAC,CAAA;IAEnC;;;;;;;;;OASG;IACH,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,CAAC,CAAA;IAE5E;;;;OAIG;IACH,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,CAAC,CAAA;IAEzB;;;;;;;;OAQG;IACH,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,CAAC,CAAA;IAErE;;;;;;;OAOG;IACH,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,CAAC,CAAA;IAErE;;;;;OAKG;IACH,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAE3C;;;OAGG;IACH,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAA;CAC/C"}
|
|
1
|
+
{"version":3,"file":"AcGiRenderer.d.ts","sourceRoot":"","sources":["../src/AcGiRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,eAAe,EAChB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE9D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAEpD,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC7D;;;OAGG;IACH,IAAI,eAAe,IAAI,mBAAmB,CAAA;IAE1C;;;OAGG;IACH,IAAI,OAAO,IAAI,WAAW,CAAA;IAE1B;;;;OAIG;IACH,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IAEvB;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAEnD;;;;OAIG;IACH,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,CAAC,CAAA;IAElC;;;;OAIG;IACH,aAAa,CAAC,UAAU,EAAE,gBAAgB,GAAG,CAAC,CAAA;IAE9C;;;;OAIG;IACH,KAAK,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,CAAC,CAAA;IAEnC;;;;;;;;;OASG;IACH,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,CAAC,CAAA;IAE5E;;;;OAIG;IACH,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,CAAC,CAAA;IAEzB;;;;;;;;OAQG;IACH,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,CAAC,CAAA;IAErE;;;;;;;OAOG;IACH,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,CAAC,CAAA;IAErE;;;;;OAKG;IACH,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAE3C;;;OAGG;IACH,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAA;CAC/C"}
|
|
@@ -8,13 +8,10 @@ import { AcGiLineWeight } from './AcGiLineWeight';
|
|
|
8
8
|
*/
|
|
9
9
|
export interface AcGiSubEntityTraits {
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
|
|
15
|
-
rgbColor: number;
|
|
16
|
-
/**
|
|
17
|
-
* Color of the entity.
|
|
11
|
+
* Resolved semantic color of the sub-entity.
|
|
12
|
+
*
|
|
13
|
+
* Use {@link acgiResolveSubEntityTraitsRgb} with {@link AcGiRenderer.context} to obtain
|
|
14
|
+
* the pixel RGB value at draw time (including ACI 7 foreground handling).
|
|
18
15
|
*/
|
|
19
16
|
color: AcCmColor;
|
|
20
17
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcGiSubEntityTraits.d.ts","sourceRoot":"","sources":["../src/AcGiSubEntityTraits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC
|
|
1
|
+
{"version":3,"file":"AcGiSubEntityTraits.d.ts","sourceRoot":"","sources":["../src/AcGiSubEntityTraits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,KAAK,EAAE,SAAS,CAAA;IAEhB;;;OAGG;IACH,QAAQ,EAAE,aAAa,CAAA;IAEvB;;;;OAIG;IACH,aAAa,EAAE,MAAM,CAAA;IAErB;;;OAGG;IACH,UAAU,EAAE,cAAc,CAAA;IAE1B;;;;OAIG;IACH,QAAQ,EAAE,cAAc,CAAA;IAExB;;;OAGG;IACH,YAAY,EAAE,gBAAgB,CAAA;IAE9B;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAA;IAEjB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAA;IAEb;;;;;;;;OAQG;IACH,SAAS,EAAE,MAAM,CAAA;CAClB"}
|
package/lib/index.d.ts
CHANGED
|
@@ -5,6 +5,8 @@ export type { AcGiImageStyle } from './AcGiImageStyle';
|
|
|
5
5
|
export type { AcGiArrowStyle, AcGiBaseLineStyle, AcGiLineStyle, AcGiLineTypePatternElement } from './AcGiLineStyle';
|
|
6
6
|
export { AcGiLineWeight } from './AcGiLineWeight';
|
|
7
7
|
export type { AcGiPointStyle } from './AcGiPointStyle';
|
|
8
|
+
export { ACGI_DARK_THEME_FOREGROUND, ACGI_LIGHT_THEME_FOREGROUND, ACGI_MODEL_SPACE_BACKGROUND, ACGI_PAPER_SPACE_BACKGROUND, DEFAULT_ACGI_CONTEXT, acgiBuildContext, acgiContrastingForegroundColor, acgiForegroundColorForBackground, acgiIsLightBackground, acgiResolveSubEntityTraitsRgb, acgiResolveSubEntityTraitsRgbFromBackground } from './AcGiContext';
|
|
9
|
+
export type { AcGiContext } from './AcGiContext';
|
|
8
10
|
export type { AcGiFontMapping, AcGiRenderer } from './AcGiRenderer';
|
|
9
11
|
export type { AcGiShapeData } from './AcGiShapeData';
|
|
10
12
|
export type { AcGiStyleType } from './AcGiStyleType';
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC9C,YAAY,EACV,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,EACf,MAAM,kBAAkB,CAAA;AACzB,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,0BAA0B,EAC3B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACnE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,iBAAiB,CAAA;AACxB,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACnE,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,cAAc,EACf,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC9C,YAAY,EACV,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,EACf,MAAM,kBAAkB,CAAA;AACzB,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,0BAA0B,EAC3B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,EAC3B,oBAAoB,EACpB,gBAAgB,EAChB,8BAA8B,EAC9B,gCAAgC,EAChC,qBAAqB,EACrB,6BAA6B,EAC7B,2CAA2C,EAC5C,MAAM,eAAe,CAAA;AACtB,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACnE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,iBAAiB,CAAA;AACxB,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACnE,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,cAAc,EACf,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
|
package/lib/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { AcGiArrowType } from './AcGiArrowType';
|
|
2
2
|
export { AcGiLineWeight } from './AcGiLineWeight';
|
|
3
|
+
export { ACGI_DARK_THEME_FOREGROUND, ACGI_LIGHT_THEME_FOREGROUND, ACGI_MODEL_SPACE_BACKGROUND, ACGI_PAPER_SPACE_BACKGROUND, DEFAULT_ACGI_CONTEXT, acgiBuildContext, acgiContrastingForegroundColor, acgiForegroundColorForBackground, acgiIsLightBackground, acgiResolveSubEntityTraitsRgb, acgiResolveSubEntityTraitsRgbFromBackground } from './AcGiContext';
|
|
3
4
|
export { AcGiMTextAttachmentPoint, AcGiMTextFlowDirection } from './AcGiTextStyle';
|
|
4
5
|
export { AcGiDefaultLightingType, AcGiOrthographicType, AcGiRenderMode } from './AcGiView';
|
|
5
6
|
export { AcGiViewport } from './AcGiViewport';
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAc/C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAc/C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,EAC3B,oBAAoB,EACpB,gBAAgB,EAChB,8BAA8B,EAC9B,gCAAgC,EAChC,qBAAqB,EACrB,6BAA6B,EAC7B,2CAA2C,EAC5C,MAAM,eAAe,CAAA;AAMtB,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,iBAAiB,CAAA;AAExB,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,cAAc,EACf,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mlightcad/graphic-interface",
|
|
3
|
-
"version": "3.5.
|
|
3
|
+
"version": "3.5.5",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
"require": "./dist/graphic-interface.umd.cjs"
|
|
34
34
|
},
|
|
35
35
|
"peerDependencies": {
|
|
36
|
-
"@mlightcad/geometry-engine": "3.4.
|
|
37
|
-
"@mlightcad/common": "1.6.
|
|
36
|
+
"@mlightcad/geometry-engine": "3.4.5",
|
|
37
|
+
"@mlightcad/common": "1.6.5"
|
|
38
38
|
},
|
|
39
39
|
"scripts": {
|
|
40
40
|
"clean": "rimraf dist lib tsconfig.tsbuildinfo",
|