(Example: +cartoon +desktops)
Advanced Search & Tips
See the Home Page side bar for links to more sections!
App Makeovers Desktop Pictures Icons MacOS X Mods Safari Stuff
Application Splashes Dock Poofs iTunes Skins MacOS X Themes Snapshots
Boot Images Download Stats Links Page Mouse Cursors Uploads
Boot Panels GUI Software Login Panels REALbasic User Forum
Clocks Home Page
Download a free demo of REALbasic!
Download a free demo of REALbasic!
Recent Articles...
3D
3D Photo Gallery Part 2 (12-06-01)
3D Photo Gallery Part 1 (11-29-01)

Audio
iPod Tricks (Part 1)
Laugh Track Machine
Audio Player with Reverb
Shepard Melody(11-08-01)
RB Phone Home (10-25-01)
Build a Drum Machine (10-04-01)

General RB
Hey! You got your Checkbox in my Listbox!
Background Applications (5-02-03)
Listbox Auto-Find
iTunes-style Listboxes
Virtual Volumes
Time Tracker
Software Distribution Part 4
Software Distribution Part 3
Software Distribution Part 2
Software Distribution Part 1
Exceptions
Custom Controls (8-2-01)
Living on the Edge (6-21-01)
Tips and Tricks (6-14-01)
Review of REALbasic 3.0 (2-19-01)
Text Clippings Made Easy (5-10-01)

Graphics
Image Spinner
Cropping Graphics (Part 4)
Cropping Graphics (Part 3)
Cropping Graphics (Part 2)
Cropping Graphics (Part 1)
Shimmer Graphics
Lissajous Figures
Simple Screen Capture
Vector Graphics
Kaleidoscope Images
Stegonography
Spirals!
Image Table (11-15-01)
RB Magnifying Lens (10-11-01)
Screen Capture (8-9-01)
Color Picker Tutorial (6-7-01)

Hacks
Ghost Grab
Speedy Mouse Extension(11-01-01)
iTunes Plugins (8-23-01)
iTunes Skinner (7-26-01)

Internet
HTML IMG Tags
Version Tracking
Even Smarter Instant Messaging
Web Tiler
JavaScript and REALbasic (10-02-01)
Stock Ticker - Part II (9-06-01)
Stock Ticker - Part I (8-30-01)
AIM Mate (8-16-01)

Mac OS X
Using Sheets in REALbasic
Build a Bundle Part 2
Build a Bundle Part 1
Dock Your Passwords
Mac OS X Debugging
REALbasic Mac OS X Icon Tutorial (12-13-01)
Animate Your Dock (5-17-01)
RB and the Command Line (5-3-01)

Novelty
Guessing Game
Calendar Trivia
Tile Mixer
Zip Code Finder
Happy Valentine's Day
Merlin Simulator Part 3 (01-24-02)
Merlin Simulator Part 2 (01-17-02)
Merlin Simulator Part 1 (01-10-02)
Buzzword Machine (10-18-01)
AppleSoft BASIC (9-20-01)

Printing
Print to PDF

Resources
Picture Extractor 2 (5-31-01)
Picture Extractor 1 (5-24-01)

Serial
Caller ID Part 3 (7-12-01)
Caller ID Part 2 (7-5-01)
Caller ID Part 1 (6-28-01)

Speech
Speech Recognition (9-13-01)
Video
Big Brother Video Capture

Newest Dev Tools!

Book Alert !
REALbasic for Dummies
by Erick Tejkowski
$19.99 @ Amazon

Made with REALbasic!

Problems?
Downloads are in StuffIt 5 format (free download).
Tell me about a bad link (Thanks!).
Submission Policy

7-25-02

Creating Vector Graphics with REALbasic by Erick Tejkowski

vector gfx This week we'll continue examining some of the new features in REALbasic 4.5. This time, it's vector graphics! REALbasic 4.5 has some brand-spanking-new classes to give you the ability to create vector graphics in your projects.


NOTE: This project requires REALbasic 4.5 or newer!

So far, you're probably most familiar with bitmap graphics, where you fill in the various squares of an imaginary grid with color. Examples of bitmap graphics include GIF, JPEG, and PICT(sometimes). Vector graphics, on the other hand, are drawings based on numerical formulas. You've seen vector files in action whenever you've viewed a pdf file in Acrobat or a drawing document in AppleWorks, or watched a Flash video on the web. Whereas bitmap graphics are a fixed size and orientation, vector graphics, with their formulaic-way of drawing, don't have the same constraints. Because of this, you can rotate and scale a vector image without loss of quality.

Build the Interface

Launch REALbasic and open Window1 from the Project window. To this window, add the following controls:

Control TypeControl NameOther Properties
PushButtonzoomButtonInCaption="Zoom In"
PushButtonzoomButtonOutCaption="Zoom Out"
PushButtonrotateButtonRtCaption="Rotate Rt."
PushButtonrotateButtonLeftCaption="Rotate Left"
CanvasCanvas1Width=500;Height=375

Arrange the interface however you'd like, but it might look like this:

07-25-02_interface.jpg (15k)

Source Code

Before you begin adding code, you need to add a property to Window1. Double-click Window1 to open its Code Editor. Select the Edit-New Property menu and create a new property.

07-25-02_prop.jpg (12k)

The first bit of code goes in the Open event of Window1.

  
  Dim r as RectShape
  Dim p as Picture
  
  //create a Group2D object
  d=New Group2D
  //create a picture object for displaying the images
  p=New Picture(500,375,0
  
  //create and define a RectShape
  r=New RectShape
  r.width=100
  r.height=25
  r.border=100
  r.bordercolor=RGB(0,0,0//black
  r.fillcolor=RGB(255,0,0// red
  r.borderwidth=2 
  
  //add the rectShape to the Group2D object
  d.append(r)
  
  //place the picture on the Canvas
  Canvas1.Backdrop=p
  Canvas1.Backdrop.Objects=d

Next, add this line of code to the Paint event of Canvas1:

  g.drawobject d,250,175

Next, you'll need to create a new method. Select Edit-New Method and create a new method named Redraw.

To this method, add the following code:

  
  //a simple routine to redraw
  //with less flicker than the paint event
  dim g as graphics
  
  g=canvas1.graphics 
  //erase the canvas
  g.ClearRect 0,0,canvas1.width,canvas1.height
  //draw objects on the canvas
  g.drawobject d,250,175
  

The final step is to add some code for the rotate and zoom PushButtons.

rotateButtonLeft.Action()
  
  //rotate left
  canvas1.backdrop.Objects.rotation=canvas1.backdrop.Objects.rotation-0.3
  redraw 
  
End Sub()

rotateButtonRt.Action()
  
  //rotate right
  canvas1.backdrop.Objects.rotation=canvas1.backdrop.Objects.rotation+0.3
  redraw 
  
End Sub()

zoomButtonIn.Action()
  
  //zoom in
  canvas1.backdrop.Objects.Scale=canvas1.backdrop.Objects.Scale*1.1
  redraw 
  
End Sub()

zoomButtonOut.Action()
  
  //zoom out
  canvas1.backdrop.Objects.Scale=canvas1.backdrop.Objects.Scale*0.9
  redraw 
  
End Sub()

Conclusion

To test the project, select the Debug-Run menu. The demo draws a simple rectangle on the screen and lets you zoom in/out and rotate the object in both directions. As usual you can download the completed project instead of creating it by hand. Use your imagination when playing with the new vector features of REALbasic 4.5. There are many useful scenarios for using this feature, so it's a welcome addition to REALbasic. Have fun and see you next week!


7-23-02

REALbasic News by Erick Tejkowski

REALbasic 4.5 Release!
Last week, REAL Software announced the availability of REALbasic 4.5. This release has lots of new features, including:

  • New Build Settings dialog; streamlined and easier to use.
  • Icon Compositor Dialog
  • Dozens of new QuickTime features
  • New Vector Graphics Classes
  • RB3D Improvements
  • RbScript for Windows
  • mySQL Support
As you can tell, there's a lot of good stuff in there... and, this is just the tip of the iceberg! Besides many other new features, you'll find loads of improvements and bug fixes too. It's a great new release, so don't miss it!

SortLibrary
Charles Yeomans has posted SortLibrary 1.9. SortLibrary is a free, open-source REALbasic library providing robust, optimized implementations of several standard sorting algorithms for use by REALbasic developers. Version 1.9 has a rewrite of BinarySearch.

New REALbasic Hotline Community
There's a new REALbasic-related Hotline server. To visit it, just enter its address into your favorite Hotline client:

chat.spirit.it:6000

Virtual Volume Browser
One of REALbasic 4.5's new features is the VirtualVolume, which allows you to encapsulate a complex structure of files and folders into a single archive. You can createVirtualVolumes with RealBasic, but you have nothing to browse what is inside it. To help out, Kualo Software created Virtual Volume Browser.

CFPlugin
Kevin Ballard has released CFPlugin. CFPlugin is a free REALbasic plugin that provides access to the CoreFoundation classes and the Property List Services, allowing you to create and parse .plists.

Graphics Plugins
Two new graphics plugins have appeared on the REALbasic scene.

  1. Einhugur PictureEffects
  2. GXLIBRARY
Both look great, so stop by and give them a test run.


See the Home Page side bar for links to more sections!
App Makeovers Desktop Pictures Icons MacOS X Mods Safari Stuff
Application Splashes Dock Poofs iTunes Skins MacOS X Themes Snapshots
Boot Images Download Stats Links Page Mouse Cursors Uploads
Boot Panels GUI Software Login Panels REALbasic User Forum
Clocks Home Page

Maintained by the Staff of ResExcellence. This entire site ©1997-2003 ResExcellence
Privacy Statement? Sure we gotta Privacy Statement.

[an error occurred while processing this directive]on the ResEx LinuxPPC Server