LDCad is a multiplatform LDraw (virtual LEGO) editor that lets you edit LDraw model documents in real-time. You can use the app to create your own Lego models using virtual bricks. There is an option to select colors, shapes, lego models etc.
LDraw is an open standard for LEGO CAD programs that allow the user to create virtual LEGO models and scenes. You can use it to document models you have physically built, create building instructions just like LEGO, render 3D photo realistic images of your virtual models and even make animations. Unlike real LEGO bricks where you are limited by the number of parts and colors, in LDraw nothing is impossible.
The major features of LDCad are multi-threaded (background) loading of parts, fast detailed real-time 3D rendering, basic part snapping on growing collection of (official) parts, integrated portable flexible parts support (springs, hoses, bands), interactive LDraw source window, script-based animation, full MPD support, part grouping and ghosting, tested editing, relative grid, multiple file editing (open as many files you like), external LDraw file change detection/reloading.
LDCad offers also support for instruction stepping, dynamic (sub)window layout, full undo/redo, copy/paste from to other LDraw software, many customization options for the part and color bins, growing collection of example models, all setting/config files are human readable/editable.