[Qgis-developer] Rendering with transparency -- slow

Christoph Spoerri cspoerri at cavtel.net
Wed Nov 29 23:40:26 EST 2006


Hi there,

I diagrammed the data model currently used by the lib_refactoring branch. 
While trying to understand the interaction of the classes and their purpose, 
I saw that some classes share similar functions (e.g. nextFeature in layer 
and provider classes), at the same time some classes could be further 
refactored. 

So, I went ahead and created a proposed data model, the way I would have 
designed it. The idea behind the model is that we have two main classes:

- QgsDataSet: used for data manipulation on a feature level (e.g. adding, 
deleting, etc.), used in QgsMapLayer for rendering. This class would contains 
methods such as nextFeature(), deleteFeature(), updateGeometry(), 
createPyramid(), etc.

- QgsDataProvider: used for data manipulation on a dataset level, e.g. 
copy/deleting an entire dataset, format conversion, select subset of 
features, etc.

The QgsMapLayer classe(s) would only be used for rendering purposes, and 
methods such as nextFeature, etc would be remove from the class.


Please let me know what you think. If folks think this approach makes sense, I 
would be happy to continue developing the model and post my progress for 
comments on the wiki site.

cheers,
Christoph
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Datamodel (current).png
Type: image/png
Size: 69071 bytes
Desc: not available
Url : http://lists.osgeo.org/pipermail/qgis-developer/attachments/20061129/ae24af07/Datamodelcurrent.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Datamodel (proposed).png
Type: image/png
Size: 56033 bytes
Desc: not available
Url : http://lists.osgeo.org/pipermail/qgis-developer/attachments/20061129/ae24af07/Datamodelproposed.png


More information about the Qgis-developer mailing list