MBS Plugin Documentation
Statistics - FAQ - Plugin Parts (All, Dependencies) - Class hierarchie
New in Version 7.0 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 8.0 8.1 8.2 8.3 8.4 8.5 8.6 8.7 9.0
The list of the themes, classes, controls, modules, global methods by category, global methods by name, screenshots, licenses and examples.
Platforms to show: All Mac Windows Linux Cross-Platform
FAQ.How to draw a nice antialiased line?
Feedback.
Answer:
This code can help you althrough it's not perfect.
You need to set lc to the current color you use.
Example:
Feedback.
Answer:
This code can help you althrough it's not perfect.
You need to set lc to the current color you use.
Example:
Sub drawLine( xs as integer, ys as integer, xe as integer, ye as integer)
dim intX, intY, count, n, xDiff, yDiff as integer
dim v, v1, floatX, floatY, xx, yy, xStep, yStep as double
dim c as color
xDiff=xe-xs
yDiff=ye-ys
count=max(abs(xDiff), abs(yDiff))
xStep=xDiff/count
yStep=yDiff/count
xx=xs
yy=ys
for n=1 to count
intX=xx
intY=yy
floatX=xx-intX
floatY=yy-intY
v=(1-floatX)*(1-floatY)*st
v1=1-v
c=face.pixel(intX, intY)
face.pixel(intX, intY)=rgb(v*lc.red+v1*c.red, v*lc.green+v1*c.green, v*lc.blue+v1*c.blue)
v=floatX*(1-floatY)*st
v1=1-v
c=face.pixel(intX+1, intY)
face.pixel(intX+1, intY)=rgb(v*lc.red+v1*c.red, v*lc.green+v1*c.green, v*lc.blue+v1*c.blue)
v=(1-floatX)*floatY*st
v1=1-v
c=face.pixel(intX, intY+1)
face.pixel(intX, intY+1)=rgb(v*lc.red+v1*c.red, v*lc.green+v1*c.green, v*lc.blue+v1*c.blue)
v=floatX*floatY*st
v1=1-v
c=face.pixel(intX+1, intY+1)
face.pixel(intX+1, intY+1)=rgb(v*lc.red+v1*c.red, v*lc.green+v1*c.green, v*lc.blue+v1*c.blue)
xx=xx+xStep
yy=yy+yStep
next
End Sub
Notes: PS: st should be 1 and face should be a RGBSurface or a Graphics object.Monkeybread Software Realbasic Plugins - Pfarrgemeinderat St. Arnulf Nickenich