* first steps towards flexible colour palettes
* add B&W palette and a test for it
* add python support;
this is, once again, not the best API due to the inability to auto-translate boost::tuples at this point
* more palette control from python
* rename some of the swig-wrapped types to make them more consistent
* handle palettes that do not have a default value
* expose and test GetDrawCoords()
* very basics are working; still loads of work to do
* very basics are working; still loads of work to do
* symbols and arrows kind of work
* switch to Nadine's approach for drawing
needs more work (like arrows and pluses) but already is not too bad
* better, but agents still to close to arrow and arrow is too short
* add a test for rxns without agents
* fix picking of cid;
drawing reactions without reactants or without products should in theory now work, but additional work is needed to get the arrows to show up
* make reactions without reactants or without products draw properly
* tweak vshift a bit; would be good to have a better solution to this
* do not draw H2O as OH2
* add option to use highlighting to show atom maps
* highlight bonds too
* cleanup
* add drawReaction to the python wrapper
* docs
* remove some printing
* fix (for real) the drawing of degree zero atoms
* ensure ring finding gets done; add some more tests
* add some SMARTS-based tests; these do not work
* improve reactant highlighting in rxn drawing
- define default colors for highlighting of reactants, atom or bonds
in the drawing options
- make highlighting colors customizable through the API
* rename to test4 in prep for merge
* temporarily disable test4 since it does not work anyway
* fix some kekulization problems
* fix YA unicode problem
* remove a stupid typo
* Fixes#1271
* add a comment or two
* fix single-atom molecules too
* add a test for grid drawing too
* simplification of the special cases; no need to make things so complex
* a bit of header cleanup
* Fixes#1106
* First pass, basics.
Still need tests and handling of parameters.
* initial pass at including JSON parsing of options (not complete)
* handle errors while parsing json instead of just crashing the server
* updated (and working) JSON configuration
* first drawing tests
* document the new function
* it helps to save before committing
* Add an initial version of wavy bonds
Used for attachment points and unknown stereochem
This is not a perfect implementation, but is a decent place to start
Currently only supports SVG and Cairo canvases.
* code review cleanup
* Fixes#982
also changes bond-wedging algorithm to favor lighter non-ring bonds
* prefer wedging bonds to lower-degree atoms
* Fixes#983
* small fixes
- Fix a problem where a chiral atom is selected to draw a wedge to instead of a ring atom
- Fix a problem where two calls to PrepareMolForDrawing() led to two wedged bonds from an atom.
* Fixes#985
This isn't the most satisfying solution (the wedged bonds are sometimes a bit too large), but it gives reasonable results on the test cases I've tried.
* A big step towards solving #910
1) Rank atoms by inverse atomic number (ensures Hs go last)
2) Use heavy-atom degree when doing layout (ensures Hs do not change gross geometry)
* basic testing
* take degree into account with ranks too
* further improvements of relative ranking.
definitely need some cleanup of this now
* some cleanup
* add an explicit test
* Fixes#852
The test added is the usual thing for the drawing code: produce some files for visual inspection.
* limit the number of lines in a short wedge