rendering

package
v0.3.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 10, 2021 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PrimitiveEmpty byte = iota
	PrimitivePoint
	PrimitiveLine
	PrimitiveRectangle
	PrimitiveEllipse
	PrimitiveTriangle
	PrimitiveText
	PrimitiveImage
	PrimitiveBezier
	PrimitiveGlyph
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ARenderer added in v0.2.0

type ARenderer struct {
	// contains filtered or unexported fields
}

func NewARenderer added in v0.2.0

func NewARenderer(delegate RendererDelegate, renderDispatcher dispatch.WorkDispatcher) *ARenderer

func (*ARenderer) AddLayer added in v0.2.0

func (r *ARenderer) AddLayer()

func (*ARenderer) Clear added in v0.2.0

func (r *ARenderer) Clear()

func (*ARenderer) GetLayer added in v0.2.0

func (r *ARenderer) GetLayer(index int) *Layer

func (*ARenderer) GetRenderingPerformer added in v0.2.0

func (r *ARenderer) GetRenderingPerformer() func()

func (*ARenderer) MakeNode added in v0.2.4

func (r *ARenderer) MakeNode(host NodeHost) *Node

func (*ARenderer) PerformRendering added in v0.2.0

func (r *ARenderer) PerformRendering()

Main or rendering thread

func (*ARenderer) Prepare added in v0.2.0

func (r *ARenderer) Prepare()

PC - main, android - rendering thread

func (*ARenderer) RegisterPrimitiveRendererDelegate added in v0.2.0

func (r *ARenderer) RegisterPrimitiveRendererDelegate(primitiveKind byte, delegate PrimitiveRendererDelegate)

func (*ARenderer) RemoveLayer added in v0.2.0

func (r *ARenderer) RemoveLayer(index int)

func (*ARenderer) SetManagementMode added in v0.2.0

func (r *ARenderer) SetManagementMode(mode ManagementMode)

func (*ARenderer) SetPreparedCallback added in v0.2.1

func (r *ARenderer) SetPreparedCallback(f func())

func (*ARenderer) SetRoot added in v0.2.4

func (r *ARenderer) SetRoot(n *Node)

func (*ARenderer) Stop added in v0.2.0

func (r *ARenderer) Stop()

type Appearance

type Appearance struct {
	FillColor    a.Color
	StrokeColor  a.Color
	StrokeWeight byte
	CornerRadius byte
}

func DefaultAppearance

func DefaultAppearance() Appearance

func (Appearance) ToMap

func (ap Appearance) ToMap() map[string]interface{}

type BezierPrimitive

type BezierPrimitive struct {
	Transform     Transform
	Appearance    Appearance
	ControlPoint1 a.IntVector3
	ControlPoint2 a.IntVector3
}

func NewBezierPrimitive

func NewBezierPrimitive(cp1, cp2 a.IntVector3) *BezierPrimitive

func (*BezierPrimitive) GetTransform

func (b *BezierPrimitive) GetTransform() Transform

func (*BezierPrimitive) GetType

func (b *BezierPrimitive) GetType() byte

func (*BezierPrimitive) SetTransform added in v0.2.0

func (b *BezierPrimitive) SetTransform(t Transform)

type ClipArea2D added in v0.3.4

type ClipArea2D struct {
	Rect  *common.RectBoundary
	Shape shape.Kind
}

func NewClipArea2D added in v0.3.4

func NewClipArea2D(kind shape.Kind, rect *common.RectBoundary) *ClipArea2D

func NewClipArea2DEmpty added in v0.3.4

func NewClipArea2DEmpty() *ClipArea2D

type ClipStack2D added in v0.3.4

type ClipStack2D struct {
	// contains filtered or unexported fields
}

func NewClipStack2D added in v0.3.4

func NewClipStack2D() *ClipStack2D

func (*ClipStack2D) Clear added in v0.3.4

func (s *ClipStack2D) Clear()

func (*ClipStack2D) Peek added in v0.3.4

func (s *ClipStack2D) Peek() *ClipArea2D

func (*ClipStack2D) Pop added in v0.3.4

func (s *ClipStack2D) Pop()

func (*ClipStack2D) Push added in v0.3.4

func (s *ClipStack2D) Push(area *ClipArea2D)

func (*ClipStack2D) Size added in v0.3.4

func (s *ClipStack2D) Size() int

type GeometryPrimitive

type GeometryPrimitive struct {
	Transform  Transform
	Appearance Appearance
	// contains filtered or unexported fields
}

func NewGeometryPrimitive

func NewGeometryPrimitive(pType byte) *GeometryPrimitive

func (*GeometryPrimitive) GetTransform

func (p *GeometryPrimitive) GetTransform() Transform

func (*GeometryPrimitive) GetType

func (p *GeometryPrimitive) GetType() byte

func (*GeometryPrimitive) SetTransform added in v0.2.0

func (p *GeometryPrimitive) SetTransform(t Transform)

type ImagePrimitive

type ImagePrimitive struct {
	Transform Transform
	ImageUrl  string
}

func NewImagePrimitive

func NewImagePrimitive(url string) *ImagePrimitive

func (*ImagePrimitive) GetTransform

func (p *ImagePrimitive) GetTransform() Transform

func (*ImagePrimitive) GetType

func (p *ImagePrimitive) GetType() byte

func (*ImagePrimitive) SetTransform added in v0.2.0

func (p *ImagePrimitive) SetTransform(t Transform)

type Layer added in v0.2.0

type Layer struct {
	// contains filtered or unexported fields
}

func (*Layer) GetIndex added in v0.2.4

func (l *Layer) GetIndex() int

func (*Layer) GetTranslation added in v0.2.0

func (l *Layer) GetTranslation() a.IntVector3

func (*Layer) SetTranslation added in v0.2.0

func (l *Layer) SetTranslation(t a.IntVector3)

type ManagementMode added in v0.2.0

type ManagementMode byte
const (
	EngineManaged ManagementMode = iota
	FrontendManaged
)

type Node added in v0.2.4

type Node struct {
	Traversable
	// contains filtered or unexported fields
}

func (*Node) AddPrimitive added in v0.2.4

func (n *Node) AddPrimitive() int

func (*Node) GetPrimitive added in v0.2.4

func (n *Node) GetPrimitive(id int) *PrimitiveNode

func (*Node) GetPrimitives added in v0.2.4

func (n *Node) GetPrimitives() []*PrimitiveNode

func (*Node) GetPrimitivesInLayer added in v0.2.4

func (n *Node) GetPrimitivesInLayer(layerIndex int) []*PrimitiveNode

func (*Node) RemoveClipArea2D added in v0.3.4

func (n *Node) RemoveClipArea2D()

func (*Node) RemovePrimitive added in v0.2.4

func (n *Node) RemovePrimitive(id int)

func (*Node) SetClipArea2D added in v0.3.4

func (n *Node) SetClipArea2D(area *ClipArea2D)

func (*Node) SetPrimitive added in v0.2.4

func (n *Node) SetPrimitive(id int, data Primitive)

func (*Node) SetPrimitiveLayer added in v0.2.4

func (n *Node) SetPrimitiveLayer(id, layerIndex int)

type NodeHost added in v0.2.4

type NodeHost interface {
	a.NamedObject
	Traversable
}

type Primitive

type Primitive interface {
	GetType() byte
	GetTransform() Transform
	SetTransform(t Transform)
}

type PrimitiveNode added in v0.2.4

type PrimitiveNode struct {
	// contains filtered or unexported fields
}

type PrimitiveRendererDelegate added in v0.2.0

type PrimitiveRendererDelegate interface {
	OnStart()
	OnSetPrimitive(ctx *PrimitiveRenderingContext)
	OnRender(ctx *PrimitiveRenderingContext)
	OnRemovePrimitive(ctx *PrimitiveRenderingContext)
	OnStop()
}

type PrimitiveRenderingContext added in v0.2.0

type PrimitiveRenderingContext struct {
	Renderer      *ARenderer
	Primitive     Primitive
	PrimitiveKind byte
	PrimitiveId   int
	State         interface{}
	Redraw        bool
	ClipArea2D    *ClipArea2D
}

type RendererDelegate added in v0.2.0

type RendererDelegate interface {
	OnPrepare()
	OnPerformRenderingStart()
	OnPerformRenderingEnd()
	OnClear()
	OnStop()
}

type TextAppearance

type TextAppearance struct {
	Font     string
	FontSize byte
}

func DefaultTextAppearance

func DefaultTextAppearance() TextAppearance

func (TextAppearance) ToMap

func (a TextAppearance) ToMap() map[string]interface{}

type TextPrimitive

type TextPrimitive struct {
	Transform      Transform
	Appearance     Appearance
	TextAppearance TextAppearance
	Text           string
	HTextAlign     a.TextAlign
	VTextAlign     a.TextAlign
	TextProvider   atext.Provider
}

func NewTextPrimitive

func NewTextPrimitive(text string, provider atext.Provider) *TextPrimitive

func (*TextPrimitive) GetTransform

func (p *TextPrimitive) GetTransform() Transform

func (*TextPrimitive) GetType

func (p *TextPrimitive) GetType() byte

func (*TextPrimitive) SetTransform added in v0.2.0

func (p *TextPrimitive) SetTransform(t Transform)

type Transform

type Transform struct {
	Position a.IntVector3
	Rotation a.IntVector3
	Size     a.IntVector3
}

func NewTransform

func NewTransform() Transform

func (Transform) GetRect added in v0.1.9

func (t Transform) GetRect() *common.RectBoundary

func (Transform) ToMap

func (t Transform) ToMap() map[string]interface{}

type Traversable added in v0.2.4

type Traversable interface {
	RenderTraverse(func(node *Node), func(node *Node))
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL