本文整理汇总了Golang中github.com/ajstarks/openvg.Init函数的典型用法代码示例。如果您正苦于以下问题:Golang Init函数的具体用法?Golang Init怎么用?Golang Init使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Init函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: main
func main() {
var cx, cy, cw, ch, midy int
message := "Now is the time for all good men to come to the aid of the party"
w, h := openvg.Init()
var speed openvg.VGfloat = 15.0
var x openvg.VGfloat = 0
midy = (h / 2)
fontsize := w / 50
cx = 0
ch = fontsize * 2
cw = w
cy = midy - (ch / 2)
rx, ry, rw, rh := openvg.VGfloat(cx), openvg.VGfloat(cy), openvg.VGfloat(cw), openvg.VGfloat(ch)
// scroll the text, only in the clipping rectangle
for x = 0; x < rw+speed; x += speed {
openvg.Start(w, h)
openvg.Background(255, 255, 255)
openvg.FillRGB(0, 0, 0, .2)
openvg.Rect(rx, ry, rw, rh)
openvg.ClipRect(cx, cy, cw, ch)
openvg.Translate(x, ry+openvg.VGfloat(fontsize/2))
openvg.FillRGB(0, 0, 0, 1)
openvg.Text(0, 0, message, "sans", fontsize)
openvg.ClipEnd()
openvg.End()
}
bufio.NewReader(os.Stdin).ReadBytes('\n')
openvg.Finish()
os.Exit(0)
}
示例2: init
func init() {
width, height = openvg.Init()
flag.Float64Var(&size, "s", float64(width)*.05, "bubble size")
flag.IntVar(&niter, "n", width/6, "number of iterations")
flag.Float64Var(&opacity, "o", 0.5, "opacity")
flag.Parse()
rand.Seed(int64(time.Now().Nanosecond()) % 1e9)
}
示例3: main
// show the current time, weather and headlines
func main() {
var (
section = flag.String("h", "u.s.", "headline type (arts, health, sports, science, technology, u.s., world, hn)")
location = flag.String("loc", "40.6213,-74.4395", "lat,long for weather")
bgcolor = flag.String("bg", "slateblue", "background color")
textcolor = flag.String("tc", "white", "text color")
width = flag.Int("width", 0, "screen width")
height = flag.Int("height", 0, "screen height")
smartcolor = flag.Bool("sc", false, "smart colors")
thumb = flag.Bool("tn", false, "show thumbnails")
)
flag.Parse()
// initial display
dw, dh := openvg.Init()
if *width > 0 && *height > 0 {
dw, dh = *width, *height
}
openvg.Start(dw, dh)
canvas := display{
width: openvg.VGfloat(dw),
height: openvg.VGfloat(dh),
bgcolor: *bgcolor,
textcolor: *textcolor,
}
canvas.countdown()
openvg.End()
canvas.clock(*smartcolor)
canvas.weather(*location)
canvas.headlines(*section, *thumb)
// update on specific intervals, shutdown on interrupt
dateticker := time.NewTicker(1 * time.Minute)
weatherticker := time.NewTicker(5 * time.Minute)
headticker := time.NewTicker(10 * time.Minute)
sigint := make(chan os.Signal, 1)
signal.Notify(sigint, os.Interrupt)
for {
select {
case <-dateticker.C:
canvas.clock(*smartcolor)
case <-weatherticker.C:
canvas.weather(*location)
case <-headticker.C:
canvas.headlines(*section, *thumb)
case <-sigint:
openvg.Finish()
os.Exit(0)
}
}
}
示例4: main
// main initializes the system and shows the picture.
// Exit and clean up when you hit [RETURN].
func main() {
rseed()
openvg.SaveTerm()
nargs := len(os.Args)
w, h := openvg.Init()
openvg.RawTerm()
progname := os.Args[0]
n := 5
if nargs > 2 {
n, _ = strconv.Atoi(os.Args[2])
}
if nargs > 1 {
switch os.Args[1] {
case "help":
usage(progname)
os.Exit(1)
case "advert":
advert(w, h)
case "image":
imagetable(w, h)
case "text":
tb(w, h)
case "textplay":
textplay(w, h)
case "astro":
planets(w, h, "You are here")
case "fontsize":
fontrange(w, h)
case "raspi":
raspi(w, h, "The Raspberry Pi")
case "loop":
loop(w, h)
case "demo":
demo(w, h, n)
case "rand":
rshapes(w, h, n)
case "test":
testpattern(w, h, "hello, world")
case "rotate":
rotext(w, h, n, "Raspi")
case "gradient":
gradient(w, h)
default:
refcard(w, h)
}
} else {
refcard(w, h)
}
WaitEnd()
}
示例5: main
// main plots data from specified files or standard input in a
// grid where plotc specifies the number of columns.
func main() {
w, h := openvg.Init()
openvg.Start(w, h)
openvg.FillColor("white")
openvg.Rect(0, 0, gwidth, gheight)
filenames := flag.Args()
if len(filenames) == 0 {
doplot(beginx, beginy, "")
} else {
plotgrid(beginx, beginy, filenames)
}
openvg.SaveEnd("vgplot.raw")
bufio.NewReader(os.Stdin).ReadByte()
openvg.Finish()
}
示例6: InitDisplay
func InitDisplay(iw, ih int) {
sWidth, sHeight = openvg.Init()
iWidth, iHeight = iw, ih
out = make([]C.VGubyte, iw*ih*VG_CHANS)
// clear screen to opaque black
openvg.StartColor(sWidth, sHeight, "black", 1.0)
openvg.End()
// apply scale transform so images fill the screen
ScaleImage(float64(sWidth)/float64(iWidth),
float64(sHeight)/float64(iHeight))
fmt.Printf("Image display initialised to (%d, %d)\n", iw, ih)
}
示例7: main
// raspberry pi, scaled to the screen dimensions
func main() {
w, h := openvg.Init()
midx := openvg.VGfloat(w) / 2
midy := openvg.VGfloat(h) / 2
rw := midx
rh := (rw * 2) / 3
fontsize := w / 25
openvg.Start(w, h)
openvg.Background(255, 255, 255)
makepi(midx-(rw/2), midy-(rh/2), rw, rh)
makepi(200, 100, 75, 50)
openvg.FillRGB(128, 0, 0, 1)
openvg.TextMid(midx, midy-(rh/2)-openvg.VGfloat(fontsize*2), "The Raspberry Pi", "sans", fontsize)
WaitEnd()
}
示例8: main
func main() {
width, height := openvg.Init()
w := openvg.VGfloat(width)
h := openvg.VGfloat(height)
y := h / 2
var (
margin openvg.VGfloat = 100.0
minsize openvg.VGfloat = 7.0
labeloc openvg.VGfloat = 100.0
)
bgcolor := "black"
labelcolor := "white"
maxsize := (h / 2) * 0.05
origin := sun.distance
mostDistant := neptune.distance
firstSize := mercury.radius
lastSize := neptune.radius
openvg.Start(width, height)
openvg.BackgroundColor(bgcolor)
for _, p := range solarSystem {
x := vmap(p.distance, origin, mostDistant, margin, w-margin)
r := vmap(p.radius, firstSize, lastSize, minsize, maxsize)
if p.name == "Sun" {
openvg.FillRGB(p.color.Red, p.color.Green, p.color.Blue, 1)
openvg.Circle(margin-(r/2), y, r)
} else {
light(x, y, r, p.color)
openvg.Circle(x, y, r)
}
if p.name == "Earth" && len(os.Args) > 1 {
openvg.StrokeColor(labelcolor)
openvg.StrokeWidth(1)
openvg.Line(x, y+(r/2), x, y+labeloc)
openvg.StrokeWidth(0)
openvg.FillColor(labelcolor)
openvg.TextMid(x, y+labeloc+10, os.Args[1], "sans", 12)
}
}
openvg.End()
bufio.NewReader(os.Stdin).ReadByte()
openvg.Finish()
}
示例9: main
func main() {
setOptions()
rand.Seed(time.Now().Unix())
w, h := openvg.Init()
width, height := openvg.VGfloat(w), openvg.VGfloat(h)
initParticles(width, height)
openvg.Start(w, h)
i := 0
for {
draw(width, height)
i++
if alternate && i == nswitch { // switch launch direction every nswitch draws
directionRTL = !directionRTL
i = 0
}
}
}
示例10: main
func main() {
width, height := openvg.Init() // OpenGL, etc initialization
w2 := float64(width / 2)
h2 := float64(height / 2)
w := float64(width)
openvg.Start(width, height) // Start the picture
openvg.BackgroundColor("black") // Black background
openvg.FillRGB(44, 77, 232, 1) // Big blue marble
openvg.Circle(w2, 0, w) // The "world"
openvg.FillColor("white") // White text
openvg.TextMid(w2, h2, "hello, world", "serif", width/10) // Greetings
openvg.SaveEnd("hello.raw") // End the picture
bufio.NewReader(os.Stdin).ReadBytes('\n') // Pause until [RETURN]
openvg.Finish() // Graphics cleanup
}
示例11: main
func main() {
var loop = flag.Bool("loop", false, "Loop the show")
var resize = flag.Bool("resize", false, `Resize image to fit the screen.`)
var bgcolor = flag.String("bg", "black", `Background color (named color or rgb(r,g,b)).`)
var delay = flag.Duration("delay", 2*time.Second, "Delay between pictures")
flag.Usage = func() {
fmt.Fprintf(os.Stderr, "usage: %s [ flags ] images...\n", os.Args[0])
flag.PrintDefaults()
os.Exit(1)
}
flag.Parse()
w, h := openvg.Init()
images := []image.Image{}
imgcount := 0
for _, imgfile := range flag.Args() {
fmt.Fprintf(os.Stderr, "loading %q ", imgfile)
img, err := getimage(imgfile, w, h, *resize)
if err != nil {
fmt.Fprintln(os.Stderr, err)
continue
}
images = append(images, img)
imgcount++
fmt.Fprintln(os.Stderr, "ok")
}
for {
for _, img := range images {
ib := img.Bounds()
imw, imh := ib.Max.X-ib.Min.X, ib.Max.Y-ib.Min.Y
openvg.Start(w, h)
openvg.BackgroundColor(*bgcolor)
x, y := openvg.VGfloat(w)/2-openvg.VGfloat(imw)/2, openvg.VGfloat(h)/2-openvg.VGfloat(imh)/2
openvg.Img(x, y, img)
openvg.End()
time.Sleep(*delay)
}
if !*loop {
break
}
}
}
示例12: main
func main() {
width, height := openvg.Init() // OpenGL, etc initialization
w := openvg.VGfloat(width)
h := openvg.VGfloat(height)
openvg.Start(width, height) // Start the picture
openvg.BackgroundColor("white") // Black background
openvg.FillColor("black")
var x, y, spacing openvg.VGfloat
x = w * 0.10
y = h * 0.90
fontsize := 24
spacing = openvg.VGfloat(fontsize) * 2
var data = []string{
"\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f",
"\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f",
"\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f",
"\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f",
"\x40\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f",
"\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f",
"\x60\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f",
"\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f",
"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f",
"\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f",
"\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf",
"\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf",
"\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf",
"\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf",
"\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef",
"\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
}
for i, s := range data {
openvg.Text(x-(spacing*2), y, fmt.Sprintf("%2x", i), "mono", fontsize)
openvg.Text(x, y, s, "mono", fontsize)
y -= spacing
}
openvg.End() // End the picture
bufio.NewReader(os.Stdin).ReadBytes('\n') // Pause until [RETURN]
openvg.Finish() // Graphics cleanup
}
示例13: main
func main() {
width, height := openvg.Init() // OpenGL, etc initialization
w2 := float64(width / 2)
h2 := float64(height / 2)
w := float64(width)
stops := []openvg.Offcolor{
{0.0, openvg.RGB{44, 100, 232}, 1.0}, // blue-ish
{0.5, openvg.RGB{22, 50, 151}, 1.0}, // darker blue
{1.0, openvg.RGB{88, 200, 255}, 1.0}, // lighter blue
}
openvg.Start(width, height) // Start the picture
openvg.BackgroundColor("black") // Black background
openvg.FillRadialGradient(w2, 0, w2, w2, w*.5, stops) // Big blue marble
openvg.Circle(w2, 0, w) // The "world"
openvg.FillColor("white") // White text
openvg.TextMid(w2, h2, "hello, world", "serif", width/10) // Greetings
openvg.SaveEnd("hvg.raw") // End the picture
bufio.NewReader(os.Stdin).ReadBytes('\n') // Pause until [RETURN]
openvg.Finish() // Graphics cleanup
}
示例14: main
func main() {
var nr = flag.Int("n", 500, "number of objects")
var message = flag.String("m", "Go/OpenVG", "message")
var bgcolor = flag.String("bg", "white", "background color")
var fgcolor = flag.String("fg", "maroon", "text color")
flag.Parse()
rseed()
width, height := openvg.Init()
fw := openvg.VGfloat(width)
fh := openvg.VGfloat(height)
openvg.Start(width, height)
openvg.BackgroundColor(*bgcolor)
for i := 0; i < *nr; i++ {
red := uint8(rand.Intn(255))
green := uint8(rand.Intn(255))
blue := uint8(rand.Intn(255))
alpha := randf()
x := randf() * fw
y := randf() * fh
radius := randf() * fw / 10
openvg.FillRGB(red, green, blue, alpha)
openvg.Circle(x, y, radius)
}
openvg.FillColor(*fgcolor)
openvg.TextMid(fw/2, fh/2, *message, "sans", width/25)
openvg.End()
bufio.NewReader(os.Stdin).ReadBytes('\n')
openvg.Finish()
}
示例15: main
func main() {
var (
filename = flag.String("f", "svgcolors.txt", "input file")
fontname = flag.String("font", "sans", "fontname")
neg = flag.Bool("neg", false, "negative")
showrgb = flag.Bool("rgb", false, "show RGB")
showcode = flag.Bool("showcode", true, "show colors and codes")
circsw = flag.Bool("circle", true, "circle swatch")
outline = flag.Bool("outline", false, "outline swatch")
fontsize = flag.Int("fs", 12, "fontsize")
rowsize = flag.Int("r", 32, "rowsize")
colw = flag.Float64("c", 340, "column size")
swatch = flag.Float64("s", 16, "swatch size")
gutter = flag.Float64("g", 12, "gutter")
err error
tcolor, line string
)
flag.Parse()
f, oerr := os.Open(*filename)
if oerr != nil {
fmt.Fprintf(os.Stderr, "%v\n", oerr)
return
}
width, height := openvg.Init()
openvg.Start(width, height)
fw := openvg.VGfloat(width)
fh := openvg.VGfloat(height)
if *neg {
openvg.FillColor("black")
openvg.Rect(0, 0, fw, fh)
tcolor = "white"
} else {
openvg.FillColor("white")
openvg.Rect(0, 0, fw, fh)
tcolor = "black"
}
top := fh - 32.0
left := openvg.VGfloat(32.0)
cw := openvg.VGfloat(*colw)
sw := openvg.VGfloat(*swatch)
g := openvg.VGfloat(*gutter)
in := bufio.NewReader(f)
for x, y, nr := left, top, 0; err == nil; nr++ {
line, err = in.ReadString('\n')
fields := strings.Split(strings.TrimSpace(line), "\t")
if nr%*rowsize == 0 && nr > 0 {
x += cw
y = top
}
if len(fields) == 3 {
var red, green, blue uint8
fmt.Sscanf(fields[2], "%d,%d,%d", &red, &green, &blue)
openvg.FillRGB(red, green, blue, 1)
if *outline {
openvg.StrokeColor("black")
openvg.StrokeWidth(1)
}
if *circsw {
openvg.Circle(x+sw/2, y+sw/2, sw)
} else {
openvg.Rect(x, y, sw, sw)
}
openvg.StrokeWidth(0)
openvg.FillColor(tcolor)
openvg.Text(x+sw+openvg.VGfloat(*fontsize/2), y, fields[0], *fontname, *fontsize)
var label string
if *showcode {
if *showrgb {
label = fields[1]
} else {
label = fields[2]
}
openvg.FillColor("gray")
openvg.TextEnd(x+cw-(sw+g), y, label, *fontname, *fontsize)
}
}
y -= (sw + g)
}
openvg.End()
bufio.NewReader(os.Stdin).ReadBytes('\n')
openvg.Finish()
}