BlockSuite API Documentation / @blocksuite/blocks / BrushElementModel
Class: BrushElementModel
Extends
ElementModel
<BrushProps
>
Constructors
new BrushElementModel(options)
new BrushElementModel(
options
):BrushElementModel
Parameters
• options
• options.model: SurfaceBlockModel
• options.onChange
• options.stashedStore: Map
<unknown
, unknown
>
• options.yMap: Map
<unknown
>
Returns
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:113
Properties
_disposable
protected
_disposable:DisposableGroup
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:72
_local
protected
_local:Map
<string
|symbol
,unknown
>
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:67
_onChange
protected
_onChange: (payload
) =>void
Parameters
• payload
• payload.oldValues: Record
<string
, unknown
>
• payload.props: Record
<string
, unknown
>
Returns
void
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:68
_preserved
protected
_preserved:Map
<string
,unknown
>
When the ymap is not connected to the doc, its value cannot be read. But we need to use those value during the creation, so the yfied decorated field's value will be stored in this map too during the creation.
After the ymap is connected to the doc, this map will be cleared.
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:65
_stashed
protected
_stashed:Map
<string
,unknown
>
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:66
color
color:
string
='#000000'
Source
packages/blocks/src/surface-block/element-model/brush.ts:95
display
display:
boolean
=true
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:90
externalXYWH
externalXYWH:
undefined
| `[${number},${number},${number},${number}]` =undefined
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:99
index
index:
string
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:84
lineWidth
lineWidth:
number
=4
Source
packages/blocks/src/surface-block/element-model/brush.ts:137
opacity
opacity:
number
=1
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:93
points
points:
number
[][] =[]
Source
packages/blocks/src/surface-block/element-model/brush.ts:64
rotate
rotate:
number
=0
Overrides
Source
packages/blocks/src/surface-block/element-model/brush.ts:92
seed
seed:
number
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:87
surface
surface:
SurfaceBlockModel
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:75
xywh
xywh: `[${number},${number},${number},${number}]` =
'[0,0,0,0]'
Overrides
Source
packages/blocks/src/surface-block/element-model/brush.ts:89
yMap
yMap:
Map
<unknown
>
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:74
Accessors
commands
get
commands():string
The SVG path commands for the brush.
Returns
string
Source
packages/blocks/src/surface-block/element-model/brush.ts:100
connectable
get
connectable():boolean
Returns
boolean
Source
packages/blocks/src/surface-block/element-model/brush.ts:139
deserializedXYWH
get
deserializedXYWH():XYWH
Returns
XYWH
Source
packages/blocks/src/surface-block/element-model/base.ts:141
elementBound
get
elementBound():Bound
Returns
Source
packages/blocks/src/surface-block/element-model/base.ts:179
externalBound
get
externalBound():null
|Bound
Returns
null
| Bound
Source
packages/blocks/src/surface-block/element-model/base.ts:101
group
get
group():null
|GroupElementModel
Returns
null
| GroupElementModel
Source
packages/blocks/src/surface-block/element-model/base.ts:167
groups
get
groups():GroupElementModel
[]
Returns
Source
packages/blocks/src/surface-block/element-model/base.ts:171
h
get
h():number
Returns
number
Source
packages/blocks/src/surface-block/element-model/base.ts:163
id
get
id():string
Returns
string
Source
packages/blocks/src/surface-block/element-model/base.ts:175
type
get
type():string
Returns
string
Source
packages/blocks/src/surface-block/element-model/brush.ts:143
w
get
w():number
Returns
number
Source
packages/blocks/src/surface-block/element-model/base.ts:159
x
get
x():number
Returns
number
Source
packages/blocks/src/surface-block/element-model/base.ts:151
y
get
y():number
Returns
number
Source
packages/blocks/src/surface-block/element-model/base.ts:155
Methods
boxSelect()
boxSelect(
bound
):boolean
Parameters
• bound: Bound
Returns
boolean
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:275
containedByBounds()
containedByBounds(
bounds
):boolean
Parameters
• bounds: Bound
Returns
boolean
Overrides
ElementModel
.containedByBounds
Source
packages/blocks/src/surface-block/element-model/brush.ts:158
getNearestPoint()
getNearestPoint(
point
):IVec2
Parameters
• point: IVec2
Returns
IVec2
Overrides
Source
packages/blocks/src/surface-block/element-model/brush.ts:163
getRelativePointLocation()
getRelativePointLocation(
position
):PointLocation
Parameters
• position: IVec2
Returns
PointLocation
Overrides
ElementModel
.getRelativePointLocation
Source
packages/blocks/src/surface-block/element-model/brush.ts:201
hitTest()
hitTest(
px
,py
,options
?):boolean
Parameters
• px: number
• py: number
• options?: HitTestOptions
Returns
boolean
Overrides
Source
packages/blocks/src/surface-block/element-model/brush.ts:147
intersectWithLine()
intersectWithLine(
start
,end
):null
|PointLocation
[]
Parameters
• start: IVec2
• end: IVec2
Returns
null
| PointLocation
[]
Overrides
ElementModel
.intersectWithLine
Source
packages/blocks/src/surface-block/element-model/brush.ts:172
pop()
pop(
prop
):void
Parameters
• prop: string
Returns
void
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:226
serialize()
serialize():
Object
Returns
Object
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:288
stash()
stash(
prop
):void
Parameters
• prop: string
Returns
void
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:187
propsToY()
static
propsToY(props
):BrushProps
Parameters
• props: BrushProps
Returns
BrushProps
Overrides
Source
packages/blocks/src/surface-block/element-model/brush.ts:35