![]() |
.. (לתיקייה המכילה) | |
IMPORTANT
|
please make sure that you have the latest version of the T2 files before submission. read the FAQ clarifications carefully. |
Missing functions, undefined reference, and so on . . .
|
if you counter a problem, then redownload the files from t2 and the HW .pdf file, then check again. this should save your time. if the problem wasn't solved, then please send mail to Raeda. |
How do I add libmtm2.a to an eclipse project?
|
Select Project->properties Choose C/C++ Build -> Settings Under the MinGW C Linker select Libraries Now need to add Libraries (-l) and path (-L) Add the path to where you put the library file and add the library (the library is named mtm1. Not libmtm1.a, just mtm1) |
I'm getting an "x86_64-w64-mingw32/bin/ld.exe: skipping incompatible" error. What should I do?|
|
You need to add -m32 flag to the gcc compilation and linkage. The flag for the compiler is added after the -std=c99 in C/C++ Build -> Settings -> GCC C Compiler -> Miscellaneous The flag for the linker is added in C/C++ Build -> Settings -> MinGW C Linker -> Miscellaneous -> Linker flags |
The command "(mtm_ex1 < t1.in >! tmpout) >!& tmperr" does not produce any output or error file
|
This is C-Shell style command. Use the bash output redirection as shown in tutorial 1 (redownload the tutorial). |
Legal plane
|
if all the (three) points lie in the same line, or if all the points are the same, then this is not a legal plane. |
Order of cross
|
Cross(p1,p2) means p2Xp1. |
mtm_ex1.o is missing
|
please use: -L. -lmtm1 instead of mtm_ex1.o for compiling your files . -L. searches for a library in the current folder . -lmtm1 search for the library libmtm1.a . |
Legal interval of index
| the legal interval is: [1,MAX], (not[0,MAX-1]) |
Clarification regarding arrangementToString
|
if you get Null return Null. for planes, print: [[first_plane_points][second_plane_points]...[last_plane_points]] please keep the order, but if you have index with no planes, don't print anything for it. the test file was updated accordingly, redownload it. in case of bad allocation, please return NULL. |
Clarification regarding arrangementPointDistance
| if the arrangement is empty, return ARRANGEMENT_INVALID_ARRANGEMENT, and *distance=-1. |
Clarification regarding arrangementPointOrdering
| if the arrangement is empty then *right=true |
Planes order in an arrangement.
|
example: create arrangement with max 4 insert p1,p2,p3. remove index 2. insert p4,p5,p6. result: p1,p4,p3,p5. |
Clarification regarding planeEquals
|
the plane (p1,p1,p2) == the plane (p1,p2,p2). because the set of plane points are {p1,p2} in both cases. |
Clarification regarding arrangementEquals
|
if both arrangements are empty then return true. if only one of them is empty, then we could say that the point is in the left side of ALL planes and we could say that it is also in the right side of ALL planes. in this case the result depend on the second arrangement. |
Plane creation and insertion
|
we could create illegal plane, and we also can insert it to an arrangement. |
Clarification regarding arrangementDirection
|
if you get a bad plane (with normal 0) then you have to return true only if there exist a bad plane (normal 0) in the arrangement. return SUCCESS in every case (except NULL arguments) |
Normals
|
You can assume that the coordinates of the points are "nice". if you calculate the normals then you will still get a "nice=integer" results. |
Empty arrangement
| arrangement is empty, if there is no planes in it. |

