Allows vector layers without spatial referencing to be interactively
georeferenced (or layers with referencing to be re-referenced!)
Sponsored by the Danish QGIS Usergroup
Useful when you've built a graph and want to perform multiple
different analysis on it after excluding routes without
having to rebuild the whole graph again
Eg. find the shortest path between two vertices, then remove all
these edge from this path and repeat to try to find the second-shortest
path which doesn't use any of the same edges from the shortest
path
* start to work on new branch for conditional statement
* adjust the layout
* some pseudocode
* start to design the type tFunct, that should lead to the conditional statement
* modify the raw with a smart pointer
* change the test method and some other parts in the tFunct type
* complete the conditional statement option and update the test
* change evaluation method
* some optimization in the evaluation method
* minor adjustment
* minor adjustmentto test method
* add the button to the ui and some change to the code
* add a comment
* modify the parser and lexer in order to let the raster calc work with case-insensitive IF/if/If/iF
* change some parts according to the review and simplify the test method
* minor changes
* modify comment
* minor changes to enum type (tFunction)
* add some parts to test toString() method
* add the possibility to use scalar condition in eveluationFunction() method and the corresponding test code
* update toString method
* update and optimize toString method
Co-authored-by: franc <Franc-Brs>
* try to commit some changes in the branch
* addedd 3 file, cmake, vrp .h and .cpp
* updating VRP, no good results
* try to solve some issue to the virtual raster provider
* metadata class added, it should be developed
* registred in qgsproviderregistry the new VRP
* on line to test debug in the new VRP
* chenge of 1_06
* minor change 2 06
* updating VRP, it can add some useless color to map canvas
* add baseclass test fro new provider
* Delete testqgsvirtualrasterprovider.cpp
* move VRP to src/providers
* Delete src/core/providers/virtualrasterprovider directory
* little change to cmake
* added as dynamic provider
* move the VRP to src/providers and let it work
* move the VRP to src/providers and let it work
* including qgis analysis
* updating block function with some calc tools
* delete block function, updating readblock function
* modified block method, used setValue --> to update with bits
* modified block method
* modified block method, adding takedata to the resultmatrix
* modified test for the new provider
* Add some checks in the block method, for raster entries
* tries for the calculator tool
* work on the hardcoded part and test
* work on the hardcoded test
* minor change in order to make the calc functionaltiy work
* minor change to the loop in which the computation occurs
* try to understand how qgsrastermatrixworks
* work on debugging new class
* work on debugging new class
* updating test and block method
* updating test and and block, now it works running in test mode
* updating test and and block, now it works running in test mode with bits
* updating test and and block, now it works running in test mode with bits
* update test
* update test and provider class
* add decodeuri and encodeui in metadata, at the moment they do nothing
* modify qgsrasterdataprovider by adding decoding and encoding uri methods
* workin on encode and decode funct
* work on encode/decode after Martin advices
* work on encode/decode after Martin advices, and update unit test
* work on encode/decode and update Cmakelist of provider test
* work on encode/decode and update Cmakelist and provider test
* work on encode/decode and update test + constructor
* work on encode/decode and constructor
* decode is now non trivial, he same as constructor
* working on encoding
* working on encoding/decoding
* change a little the code/decode mehods in order to return and get a struct as output/input
* change of decode method
* change the encode method, I should polish the code and optimize the encode for raster layers
* add flag ptr bool to decode mehod
* add flag ptr and modified the constructor of vrprovider
* work on the constructor and deconstructor, the flag does not work properly
* work on the constructor anf decoder
* work on the constructor and decoder
* work on the constructor and add some lines to popoluta mRasterEntries
* delete hardcoded data
* work on constructor and copy constructor 2
* add the parsing of the formula in the constructor, I should make a private var with calcnode
* add the parsing of the formula in the constructor, I should make a private var with calcnode2
* add some checks in the constructor2
* modify the copy constructor, add some code to adjust the qgsrasterdataprovider.sip
* modify checks in the constructor and in the decode method, in order to avoid nested if stat
* delete the logic in the decode method and add in the constructor
* delete the logic in the decode method and add in the constructor, add some redundant check in the constructor
* delete the logic in the decode method and add in the constructor, add some redundant check in the constructor 2
* test is now more general
* test is now more general2
* delete of a comment
* banned keywords check
* little error
* add copyright
* add copyright2
* add assignment operator= delete
* add documentation in qgsrasterprovider
* documentation
* modify qgsstringutils
* little modifications
* add the checkbox to the ui
* come back to old ui for raster calc
* adjust some qt::endl in the test of vrprovider
* start to work on the ui dialog
* layot of the code
* add some logic to the dialog of the raster calc
* add some test to qgisapp, need to modify the encoder and maybe put it in the qgrastercalcdialog
* modify some logic in rastercalcdialog and in the app, I should modify and move the encode method
* modify the comment
* add method to calcnode, modify the constructor of the provider and the open of the dialog
* add documentation
* some modifications according to the first review
* sadd some changes according to Martin's review
* change qgsrastercalcnode methods that returns raster names, small change to ui
* change the ui
* change the ui - using QString instead of QStringLiteral
* change the ui - using QString instead of QStringLiteral
* change name of subdirectory containing the virtual raster provider
* change name of subdirectory containing the virtual raster provider2
* change name of subdirectory containing the virtual raster provider3
* minor changes to makefiles
* minor change to dialog, to hide and show the output format and path
* provider key changed to the shorter virtualraster
* add some code to QgsRasterLayer::encodedSource and decodedSource
* delete some comments
* updating VRP, no good results
* made some change after the the second review
* delete the comments
* change some part of the code (delete of comments and cleaning the code)
* correct some layout errors
* change the mail contatct in my prvider
* change details on the method in qgsrastercalcnode
* change some method of the test class of my provider
* delete some leakage in the virtual raster provider
* modify some parts according to the review + change two lines of code for encoding/decoding methods
* modify a line of qgisapp.cpp
* small change according to the comments on th PR
* add a test method for second generation virtual raster and modify checks in qgisapp
* correction of the test method
Co-authored-by: franc <Franc-Brs>
Instead of QgsGraphBuilder::graph() taking the ownership of the graph
and leaving the QgsGraphBuilder in an unpredictable state, add an
explicit "takeGraph" method which takes the existing graph and
make the existing "graph" method just return a copy of the graph.
Also fix corresponding memory leaks in network analysis processing
algorithms.
Fixes#44079