本文整理汇总了Golang中exp/draw.Point类的典型用法代码示例。如果您正苦于以下问题:Golang Point类的具体用法?Golang Point怎么用?Golang Point使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Point类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: Draw
func (t *Tiler) Draw(dst draw.Image, clipr draw.Rectangle) {
if t.current == nil {
panic("no current")
}
min := draw.Point{
roundDown(clipr.Min.X, t.tileSize),
roundDown(clipr.Min.Y, t.tileSize),
}
var p draw.Point
for p.Y = min.Y; p.Y < clipr.Max.Y; p.Y += t.tileSize {
for p.X = min.X; p.X < clipr.Max.X; p.X += t.tileSize {
tile := t.all.Get(p.X, p.Y, t.calc)
if tile == nil {
tile = NewTile(
draw.Rect(p.X, p.Y, p.X+t.tileSize, p.Y+t.tileSize),
t.calc,
nil,
false,
)
t.all.Set(p.X, p.Y, t.calc, tile)
t.current[tile] = true
tile.Go(t.updatec)
} else if !t.current[tile] {
tile.Go(t.updatec)
}
tile.Draw(dst, clipr)
}
}
}
开发者ID:zenoss,项目名称:rog-go,代码行数:29,代码来源:mandel.go
示例2: canfit
func canfit(p *Piece) bool {
var dx = [...]int{0, -1, 1, -2, 2, -3, 3, 4, -4}
j := N + 1
if j >= 4 {
j = p.sz.X
if j < p.sz.Y {
j = p.sz.Y
}
j = 2*j - 1
}
for i := 0; i < j; i++ {
var z draw.Point
z.X = pos.X + dx[i]*pcsz
z.Y = pos.Y
if !collide(z, p) {
z.Y = pos.Y + pcsz - 1
if !collide(z, p) {
undrawpiece()
pos.X = z.X
return true
}
}
}
return false
}
开发者ID:edisonwsk,项目名称:golang-on-cygwin,代码行数:25,代码来源:xs.go
示例3: warp
func warp(p draw.Point, x int) int {
if !suspended && piece != nil {
x = pos.X + piece.sz.X*pcsz/2
if p.Y < rboard.Min.Y {
p.Y = rboard.Min.Y
}
if p.Y >= rboard.Max.Y {
p.Y = rboard.Max.Y - 1
}
//moveto(mousectl, draw.Pt(x, p.Y));
}
return x
}
开发者ID:edisonwsk,项目名称:golang-on-cygwin,代码行数:13,代码来源:xs.go
示例4: collide
func collide(pt draw.Point, p *Piece) bool {
pt.X = (pt.X - rboard.Min.X) / pcsz
pt.Y = (pt.Y - rboard.Min.Y) / pcsz
for _, q := range p.d {
pt.X += q.X
pt.Y += q.Y
if pt.X < 0 || pt.X >= NX || pt.Y < 0 || pt.Y >= NY {
return true
continue
}
if board[pt.Y][pt.X] != 0 {
return true
}
}
return false
}
开发者ID:edisonwsk,项目名称:golang-on-cygwin,代码行数:16,代码来源:xs.go
示例5: julia
func (ctxt *context) julia(p draw.Point) {
if f := ctxt.f.Associated(p.Add(ctxt.mouseDelta())); f != nil {
ctxt.push(f)
}
}
开发者ID:zenoss,项目名称:rog-go,代码行数:5,代码来源:mandel.go
注:本文中的exp/draw.Point类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论