Difference between revisions of "CheatSheetForConvertingto2geom"
Jump to navigation
Jump to search
Verbalshadow (talk | contribs) m (add error) |
(beautification) |
||
Line 1: | Line 1: | ||
=Cheat Sheet For Converting to 2geom= | |||
If you are just starting I suggest you pick a header file and convert just one function at a time. That will give you a feel for the process as you get more comfortable do more at one time. | If you are just starting I suggest you pick a header file and convert just one function at a time. That will give you a feel for the process as you get more comfortable do more at one time. | ||
==Items That you Can Switch NR:: for Geom::== | |||
* <code>NR::Matrix</code> | |||
* <code>NR::Rect</code> | |||
* <code>NR::Dim2</code> | |||
* <code>NR::L2</code> | |||
* <code>NR::Y</code> | |||
* <code>NR::X</code> | |||
* <code>NR::identify</code> | |||
* <code>NR::Coord</code> | |||
==Things that need small adjustments or complete replacement== | |||
Line 46: | Line 25: | ||
|- | |- | ||
| | | | ||
| NR::scale | | <code>NR::scale</code> | ||
| Geom::Scale (note the capital letter S) | | <code>Geom::Scale</code> (note the capital letter S) | ||
|- | |- | ||
| | | | ||
| NR::translate | | <code>NR::translate</code> | ||
| Geom::Translate (capital) | | <code>Geom::Translate</code> (capital) | ||
|- | |- | ||
| | | | ||
| nrrect.extent(NR::X) | | <code>nrrect.extent(NR::X)</code> | ||
| <nowiki>geomrect.dimensions()[Geom::X] </nowiki>'''OR''' | | <code><nowiki>geomrect.dimensions()[Geom::X]</nowiki></code> '''OR''' | ||
<nowiki>geomRect[X].extent()</nowiki> | <code><nowiki>geomRect[X].extent()</nowiki></code> | ||
|- | |- | ||
| | | | ||
| height= r->extent(NR::Y); | | <code>height = r->extent(NR::Y);</code> | ||
| <nowiki>height= r->dimensions()[Geom::Y];</nowiki> | | <code><nowiki>height = r->dimensions()[Geom::Y];</nowiki></code> | ||
|- | |- | ||
| | | | ||
| NR::expansion(nrmatrix) | | <code>NR::expansion(nrmatrix)</code> | ||
| geommatrix.descrim() | | <code>geommatrix.descrim()</code> | ||
|- | |- | ||
| desktop.cpp:754: error: 'expand' is not a member of 'Geom' | | desktop.cpp:754: error: 'expand' is not a member of 'Geom' | ||
| NR::Rect const viewbox = NR::expand(canvas->getViewbox(), border); | | <code>NR::Rect const viewbox = NR::expand(canvas->getViewbox(), border);</code> | ||
viewbox.expandBy(border); | | <code>Geom::Rect viewbox = canvas->getViewbox();</code> | ||
<code>viewbox.expandBy(border);</code> | |||
|- | |- | ||
| desktop.cpp:162: error: 'class Geom::Matrix' has no member named 'set_identity' | | desktop.cpp:162: error: 'class Geom::Matrix' has no member named 'set_identity' | ||
| Mymatrix = set_identity (Nrmatrix) | | <code>Mymatrix = set_identity (Nrmatrix)</code> | ||
| identity(Nrmatrix) '''OR''' | | <code>identity(Nrmatrix)</code> '''OR''' | ||
matrix.setIdentity() | <code>matrix.setIdentity()</code> | ||
|- | |- | ||
Line 96: | Line 74: | ||
<nowiki>'boost::optional<Geom::D2<Geom::Interval> >' requested</nowiki> | <nowiki>'boost::optional<Geom::D2<Geom::Interval> >' requested</nowiki> | ||
| <nowiki>boost::optional<NR::Rect></nowiki> | | <code><nowiki>boost::optional<NR::Rect></nowiki></code> | ||
| <nowiki>boost::optional<Geom::Rect></nowiki> | | <code><nowiki>boost::optional<Geom::Rect></nowiki></code> | ||
|- | |- | ||
| <nowiki>desktop.cpp:1004: error: no matching function for call to 'Geom::D2<Geom::Interval>::isEmpty(double)' ./2geom/rect.h:105: note: candidates are: bool Geom::D2<Geom::Interval>::isEmpty() const </nowiki> | | <nowiki>desktop.cpp:1004: error: no matching function for call to 'Geom::D2<Geom::Interval>::isEmpty(double)' ./2geom/rect.h:105: note: candidates are: bool Geom::D2<Geom::Interval>::isEmpty() const </nowiki> | ||
| <nowiki>if ( !d || d->isEmpty(0.1) ) { | | <pre><nowiki>if ( !d || d->isEmpty(0.1) ) { | ||
return; | |||
return; | |||
} | } | ||
</nowiki> | </nowiki></pre> | ||
| <pre><nowiki> if ( !d | |||
|| d->width() < 0.1 | |||
|| d->height() < 0.1) | |||
{ | { | ||
return; | |||
return; | }</pre> | ||
} | |||
|- | |- | ||
| display/nr-arena-item.cpp:734: error: ‘const class Geom::Matrix’ has no member named ‘test_identity’ | | display/nr-arena-item.cpp:734: error: ‘const class Geom::Matrix’ has no member named ‘test_identity’ | ||
| NR:: | | <code>NR::matrix.test_identity()</code> | ||
| <code>local.isIdentity()</code> | |||
matrix.test_identity() | |||
| local.isIdentity() | |||
|- | |- | ||
Line 138: | Line 104: | ||
|- | |- | ||
| Geom::Rotate doesn't seem have a operator/ what is the trick for turning division in to multiplication, again | | <code>Geom::Rotate</code> doesn't seem have a operator/ what is the trick for turning division in to multiplication, again | ||
| r1/r2 | | <code>r1/r2</code> | ||
| r1 * r2.inverse() | | <code>r1 * r2.inverse()</code> | ||
|- | |- | ||
| | | | ||
| NR::Rect's can be changed to Geom::Rect But it is better not to do this. | | <code>NR::Rect</code>'s can be changed to <code>Geom::Rect</code> But it is better not to do this. | ||
| geomrect = to_2geom(nrrect) | | <code>geomrect = to_2geom(nrrect)</code> | ||
|- | |- | ||
| | | | ||
| NR::union_bounds() | | <code>NR::union_bounds()</code> | ||
| Geom::unify() | | <code>Geom::unify()</code> | ||
|- | |- | ||
| sp-item.cpp:814: error: ‘expansionX’ is not a member of ‘Geom’ | | sp-item.cpp:814: error: ‘expansionX’ is not a member of ‘Geom’ | ||
| | | <code>dy0 *= NR::expansionY(i2d);</code> | ||
dx0 *= NR::expansionX(i2d); | <code>dx0 *= NR::expansionX(i2d);</code> | ||
| dy0 *= i2d.expansionY(); | | <code>dy0 *= i2d.expansionY();</code> | ||
dx0 *= i2d.expansionX(); | <code>dx0 *= i2d.expansionX();</code> | ||
|- | |- | ||
| sp-item.cpp:1447: error: ‘const class Geom::Matrix’ has no member named ‘is_translation’ | | sp-item.cpp:1447: error: ‘const class Geom::Matrix’ has no member named ‘is_translation’ | ||
| !(!transform.is_translation() && SP_OBJECT_STYLE(item) && SP_OBJECT_STYLE(item)->getFilter()) | | <code>!(!transform.is_translation() && SP_OBJECT_STYLE(item) && SP_OBJECT_STYLE(item)->getFilter())</code> | ||
| !(!transform.isTranslation() && SP_OBJECT_STYLE(item) && SP_OBJECT_STYLE(item)->getFilter()) | | <code>!(!transform.isTranslation() && SP_OBJECT_STYLE(item) && SP_OBJECT_STYLE(item)->getFilter())</code> | ||
|- | |- | ||
| text-context.cpp:1610: error: no matching function for call to ‘to_2geom(boost::optional<Geom::D2<Geom::Interval> >)’ | | text-context.cpp:1610: error: no matching function for call to ‘to_2geom(boost::optional<Geom::D2<Geom::Interval> >)’ | ||
| boost::optional<Geom::Rect> frame_bbox = to_2geom(sp_item_bbox_desktop(frame)); | | <code><nowiki>boost::optional<Geom::Rect> frame_bbox = to_2geom(sp_item_bbox_desktop(frame));</nowiki></code> | ||
| boost::optional<Geom::Rect> frame_bbox = sp_item_bbox_desktop(frame); | | <code><nowiki>boost::optional<Geom::Rect> frame_bbox = sp_item_bbox_desktop(frame);</nowiki></code> | ||
|} | |} |
Revision as of 01:20, 16 October 2008
Cheat Sheet For Converting to 2geom
If you are just starting I suggest you pick a header file and convert just one function at a time. That will give you a feel for the process as you get more comfortable do more at one time.
Items That you Can Switch NR:: for Geom::
NR::Matrix
NR::Rect
NR::Dim2
NR::L2
NR::Y
NR::X
NR::identify
NR::Coord
Things that need small adjustments or complete replacement
Error looks like | NR Function or Code | 2geom Replacement |
NR::scale
|
Geom::Scale (note the capital letter S)
| |
NR::translate
|
Geom::Translate (capital)
| |
nrrect.extent(NR::X)
|
geomrect.dimensions()[Geom::X] OR
| |
height = r->extent(NR::Y);
|
height = r->dimensions()[Geom::Y];
| |
NR::expansion(nrmatrix)
|
geommatrix.descrim()
| |
desktop.cpp:754: error: 'expand' is not a member of 'Geom' | NR::Rect const viewbox = NR::expand(canvas->getViewbox(), border);
|
Geom::Rect viewbox = canvas->getViewbox();
|
desktop.cpp:162: error: 'class Geom::Matrix' has no member named 'set_identity' | Mymatrix = set_identity (Nrmatrix)
|
identity(Nrmatrix) OR
|
desktop.cpp: In member function 'bool SPDesktop::isWithinViewport(SPItem*) const':
desktop.cpp:532: error: conversion from 'boost::optional<NR::Rect>' to non-scalar type 'boost::optional<Geom::D2<Geom::Interval> >' requested |
boost::optional<NR::Rect>
|
boost::optional<Geom::Rect>
|
desktop.cpp:1004: error: no matching function for call to 'Geom::D2<Geom::Interval>::isEmpty(double)' ./2geom/rect.h:105: note: candidates are: bool Geom::D2<Geom::Interval>::isEmpty() const | if ( !d || d->isEmpty(0.1) ) { return; } |
<nowiki> if ( !d || d->width() < 0.1 || d->height() < 0.1) { return; } |
display/nr-arena-item.cpp:734: error: ‘const class Geom::Matrix’ has no member named ‘test_identity’ | NR::matrix.test_identity()
|
local.isIdentity()
|
selection-chemistry.cpp:1424: error: no match for ‘operator[]’ in ‘center[X]’
center is a boost::optional<Geom::Point> |
you're missing the * | |
Geom::Rotate doesn't seem have a operator/ what is the trick for turning division in to multiplication, again
|
r1/r2
|
r1 * r2.inverse()
|
NR::Rect 's can be changed to Geom::Rect But it is better not to do this.
|
geomrect = to_2geom(nrrect)
| |
NR::union_bounds()
|
Geom::unify()
| |
sp-item.cpp:814: error: ‘expansionX’ is not a member of ‘Geom’ | dy0 *= NR::expansionY(i2d);
|
dy0 *= i2d.expansionY();
|
sp-item.cpp:1447: error: ‘const class Geom::Matrix’ has no member named ‘is_translation’ | !(!transform.is_translation() && SP_OBJECT_STYLE(item) && SP_OBJECT_STYLE(item)->getFilter())
|
!(!transform.isTranslation() && SP_OBJECT_STYLE(item) && SP_OBJECT_STYLE(item)->getFilter())
|
text-context.cpp:1610: error: no matching function for call to ‘to_2geom(boost::optional<Geom::D2<Geom::Interval> >)’ | boost::optional<Geom::Rect> frame_bbox = to_2geom(sp_item_bbox_desktop(frame));
|
boost::optional<Geom::Rect> frame_bbox = sp_item_bbox_desktop(frame);
|