本文整理汇总了Golang中github.com/vizstra/vg.Context.Stroke方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.Stroke方法的具体用法?Golang Context.Stroke怎么用?Golang Context.Stroke使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/vizstra/vg.Context
的用法示例。
在下文中一共展示了Context.Stroke方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: 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()
}
示例2: 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()
}
}
}
示例3: 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)
}
}