ESRI shapefile extension expands BabaCAD capabilities in GIS domain. Open and edit ESRI geometry and attribute data. View attribute data in separate TableView window and use excel-like filter to highlight, select or zoom to geometry features based on filter search criteria in attribute data. Save geometry to dxf files to open later in BabaCAD or any other CAD/GIS platform. Later, attribute data save option will be available, so GIS users can completely migrate from expensive ArcMap/ArcInfo to free GIS platform. There is also option to transform geospatial data from WGS to local coordinate systems (curently only regions that use Gauss-Kruger projection for local coordinate system is supported. Use number 101 for transformation code for Balkan region after starting command CSTRANS.
Oracle Spatial Add-On for BabaCAD is extension module (.bem) which can be set up in a minute to start viewing and editing geometries and attribute data from Oracle Spatial database. BabaCAD is used as temporary workspace in which you can select and edit spatial and associated attribute data in precise CAD manner. When click on some Oracle spatial feature imported into BabaCAD workspace, it's attribute data are available for edit in BabaCAD Properties Window in "Extension Data" section. Line and polygon geometries (SDO_GEOMETRY) from Oracle are imported as BabaCAD polyline object. POINT geometry is imported and block is inserted for each point (block must exists in BabaCAD drawing, so it's the best practice to prepare empty dxf drawing with layers and blocks and don't save it on exit').
Download Oracle Spatial Add-on
BabaCAD 1.3.2 Beta (download from "Extension Modules") and Oracle Client software must be installed on the client machine. Current version of Oracle Spatial AddOn needs Oracle Client 11.2.0.2. If no Oracle Client is installed, then Oracle Instant Client for NT (32-bit) is recommended to install (about 50 Mb).
Connection parameters (username, password, database name) along with other parameters should be configured in BabaORA.ini file, and after downloading and installing AddOn (download it from "Extension Modules"), it's template copy is located at \Program Files(x86)\BabaCAD\BabaCAD\Extension Modules\. Rename BabaORA_template.ini to BabaORA.ini and edit with notepad. Configuration sections in this file are as follows:
[Connection]
Username=...
Password=%...%
DbName=...
This section has to be filled with Oracle database user name, password and database name. Password must be entered between %% signs cause it will be encrypted after first use. If there is no TNS name configured, then you can write ip address slash dbaname (see template .ini file).
[Table]
1=tableName1
2=tableName2
...
tableName1,2... are names of Oracle tables which contains geometry data (SDO_GEOMETRY column).
[AttrName]
1=attr1,attr2,attr3,...
2=attr1,attr2,attr3,...
...
Fill these with oracle table column names (except primary key column (ID) and SDO_GEOMETRY column).
[AttrType]
1=int,double,string,...
2=string,int,int,...
...
Fill these with oracle table column types (possible values: int,double,string and all VARCHARs are "string", all floating and number with decimal point are "double", integer is "int".
[Geometry]
1=geometry
2=geometry
...
Oracle SDO_GEOMETRY column name for each table.
[ROWID]
1=ID
2=ID
...
Oracle primary or unique key column name for each table (tableName1,2...).
[FilterColName]
1=colName1
2=colName2
...
colName1,2... are column names in coresponding geometry tables to use for query (user is prompted to enter value in BabaCAD command line for filter column).
[FilterColType]
1=int
2=like
...
You can set this to colName1,2 type (int,double,string) or you can put 'like' operator which means that user can query geometries by entering a part of string for specified filter column.
[Layer]
1=layerName1
2=layerName2
...
layerName1,2.... must exist in BabaCAD drawing (it's the best practice to prepare an empty drawing with configured layers), cause geometry from tableName1 would be imported into layerName1, tableName2 into layerName2 and so on.
[LayerType]
1=3001
2=3002
...
Sdo_GType of each geometry table. For example 3001 is 3D point, 3002 is LINE geometry, 2001 is 2D point and so on (3D reserved for future releases).
[BlockColName]
1=blockName1
2=
...
blockName1 is block name (must exists in BabaCAD drawing) that will represents POINT geometry when imported from oracle database. TableName2 in my example is of type 3002 (LINE geometry), so in that case the second row (2=) has empty value for blockName. If you have even one POINT geometry table, this and next two config sections (block scale and rotation) must exist.
[BlockColScale]
1=scaleColName1
2=scaleColName2
...
If geometry of tableName1,2... is of the POINT type, then coresponding row in this section must have column name which contains scale value for block inserted for imported point geometry.
[BlockColRotation]
1=rotationColName1
2=rotationColName2
...
If geometry of tableName1,2... is of the POINT type, then coresponding row in this section must have column name which contains rotation value for block inserted for imported point geometry.
After installation, configure BabaORA.ini file (see setup instructions), then start BabaCAD and if everything is installed ok, you will find a new toolbar with four vertical icons at the right side. You can move toolbar where ever you want. First toolbar button is to click once to connect to Oracle database (wait until get 'Connected to oracle.' message in BabaCAD command line). Second toolbar button is used to import geometry from database. After you click this button, there will be prompt message in command line asking you to choose Oracle layer (geometry table) to import from. If FilterColName is configured, then after layer is specified, user has to enter filter value or hit enter to import all geometries (FilterColType must be 'like' for import all option). Third and forth toolbar buttons (Add a new oracle spatial feature and Update to database) are not available in Lite version. These features are available in Pro version, which can be purchased from authorized distributors. If there is no local distributor, please fill contact form and author will try to find one in your country.
BabaGIS is powerful GIS application for viewing end editing spatial data stored in Oracle Spatial databases through BabaGIS Middle-Tier Web Service running on Windows Server. BabaGIS Web Service handles requests from users running BabaGIS android application, read spatial and attribute data from Oracle database and sends data back to BabaGIS mobile application. Supports Oracle SDO Geometry and Oracle geo-referenced raster images (GeoRaster). BabaGIS users can also import GIS and CAD data from DXF files. Field work users will recognize power of this application by using zoom to GPS location feature. Oracle spatial data owners can contact author regarding setup of BabaGIS Web Service.