本文整理匯總了Golang中github.com/vizstra/vg.Context.BeginPath方法的典型用法代碼示例。如果您正苦於以下問題:Golang Context.BeginPath方法的具體用法?Golang Context.BeginPath怎麽用?Golang Context.BeginPath使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/vizstra/vg.Context
的用法示例。
在下文中一共展示了Context.BeginPath方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Draw
func (self *LineChart) Draw(x, y, w, h float64, ctx vg.Context) {
ui.DrawDefaultElement(x, y, w, h, Palette[CHART_BACKGROUND], ctx)
// th := self.Title.draw(x, y, w, h, ctx)
ctx.BeginPath()
ctx.Fill()
self.drawSeries(x, y, w, h, ctx)
ctx.ResetScissor()
}
示例2: DrawDefaultElement
func DrawDefaultElement(x, y, w, h float64, bg color.Color, ctx vg.Context) {
// Shadow
ctx.BeginPath()
ctx.StrokeColor(color.RGBA{100, 100, 100, 100})
ctx.RoundedRect(x, y, w, h, 30)
ctx.StrokeWidth(1)
ctx.Stroke()
ctx.FillPaint(ctx.BoxGradient(x, y, w, h, h*.5, h, bg, bg))
ctx.Fill()
}
示例3: drawSeries
func (self *LineChart) drawSeries(x, y, w, h float64, ctx vg.Context) {
// Boundries
baseline := y + h
_, max, count := self.Model.Limits()
horIncr := w / (count - 1)
vratio := (h - 1) / max
for _, s := range self.Model.Series() {
c1 := CloneColor(s.Color)
c1.A = 150
ctx.StrokeColor(c1)
ctx.StrokeWidth(s.StrokeWidth)
ctx.BeginPath()
for i, f := range s.Data {
if i == 0 {
ctx.MoveTo(x+float64(i)*horIncr, baseline-(f*vratio))
} else {
ctx.LineTo(x+float64(i)*horIncr, baseline-(f*vratio))
}
}
ctx.Stroke()
if self.Fill {
ctx.BeginPath()
// ctx.MoveTo(x, baseline)
c2 := CloneColor(s.Color)
c2.A = 200
ctx.FillColor(c2)
for i, f := range s.Data {
if i == 0 {
ctx.MoveTo(x+float64(i)*horIncr, baseline-(f*vratio))
}
ctx.LineTo(x+float64(i)*horIncr, baseline-(f*vratio))
if i == len(s.Data)-1 {
ctx.LineTo(x+float64(i)*horIncr, baseline)
ctx.LineTo(x, baseline)
ctx.MoveTo(x, baseline-(s.Data[0]*vratio))
break
}
}
ctx.Fill()
}
}
}
示例4: Draw
func (self *Element) Draw(ctx vg.Context) {
x, y, w, h := self.Bounds()
x, y = self.Clamp(x, y)
// draw background
c := CloneColor(self.ActiveBackground)
bg := ctx.BoxGradient(x, y, w, h, h, h, c, c)
ctx.BeginPath()
ctx.RoundedRect(x, y, w, h, self.CornerRadius)
ctx.FillPaint(bg)
ctx.Fill()
ctx.StrokeWidth(self.BorderWidth)
ctx.StrokeColor(c.Lighten(-0.5))
ctx.Stroke()
if self.DrawCB != nil {
self.DrawCB(ctx)
}
}
示例5: Draw
func (self *Text) Draw(ctx vg.Context) {
x, y, w, h := self.Bounds()
self.lastContext = &ctx
ctx.Scissor(x, y, w, h)
ctx.BeginPath()
ctx.RoundedRect(x, y, w, h, self.CornerRadius)
ctx.FillColor(self.Background)
ctx.Fill()
ctx.FillColor(self.Foreground)
self.forEachDrawnToken(x, y, w, h,
func(i int, x, y, lineHeight float64, bounds *ui.Rectangle, ctx *vg.Context) {
ctx.Text(x, y, self.tokens[i])
},
)
// for i := 0; i < len(self.selections); i++ {
// s := self.selections[i]
// }
ctx.ResetScissor()
}