swig/Examples/r/class/runme.R
William S Fulton dd80fda7bf changes for generated .R file name change
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10110 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-11-11 20:41:11 +00:00

49 lines
1 KiB
R

# This file illustrates the proxy class C++ interface generated
# by SWIG.
dyn.load(paste("example_wrap", .Platform$dynlib.ext, sep=""))
source("example.R")
cacheMetaData(1)
# ----- Object creation -----
print("Creating some objects:")
circle <- Circle(10)
print (" Created circle")
square <- Square(10)
print (" Created square")
# ----- Access a static member -----
sprintf("A total of %d shapes were created", Shape_nshapes())
# ----- Member data access -----
# Set the location of the object
circle$x <- 20
circle$y <- 30
square$x <- -10
square$y <- 5
print("Here is their current position:")
sprintf(" Circle = (%f, %f)", circle$x,circle$y)
sprintf(" Square = (%f, %f)", square$x,square$y)
# ----- Call some methods -----
print ("Here are some properties of the shapes:")
sapply(c(circle, square),
function(o) {
sprintf(" area = %f perimeter = %f", o$area(), o$perimeter())
})
print("Guess I'll clean up now")
delete(circle)
delete(square)
sprintf("%d shapes remain", Shape_nshapes())
print ("Goodbye");