There are myriad ways to achieve this. As I read it, you're looking for a 2D perspective, which thankfully is far more accessible for anyone without experience with 3D rendering. You could explore the use of a 3rd party library as sch suggested.
If you wanted a "native" solution, your options are going to be either something CG based or something image/UIKit based. Both are relatively accessible.
With Quartz/CG, essentially you will draw series of lines and arcs to compose the shapes you want. I generally create sketches on paper, then kind of plot out the rough segments and components I need in code; it's really not very hard to draw the paths with CG commands. You can build a shape-factory class pretty easily, and then you can just ask that for a given shape in a given size when it comes time to drop a shape into your view.
If you're reluctant to draw the paths in code, your last option is to use UIKit. With this approach, you could create your shapes in photoshop, slice them into images, then place those into imageviews and into your app. You can then manipulate these images in 2.5d space using CALayer transforms. If your needs are modest, this is a relatively easy and simple way to do it and have it look decent. Unfortunately this approach is not highly dynamic, wouldn't scale well, and may simply not meet with the performance threshold you're looking for on-screen.