@Атанас
[...] в условието пише при подаване на вектор(0, 0) за нормализиране да
хвърля ГеометричнаГрешка, а след това Йоан мисля отговаря на някой задал въпрос
че въпросната функция трябва да връща false. Моля за пояснение по този
въпрос.
Това за геометричната грешка е за Vector(0, 0).normalized()
.
Това с False
е за Vector(0,0).isnormalized()
Още едно въпросче: Вярно ли е ако имаме a = Vector(1, 1)
a.normalized().length() да ни връща 0.9999999999999999
Не е проблем. Това е напълно очаквано (друг е въпроса дали е вярно).
@Йолина:
Искам да попитам метода __repr__ за точка какво всъщност трябва да изведе
(колко координати)? Например: Point(1,2,1) ще изведе Point(1,2,1) или
Point(1,2)
Няма значение. Важното е, като дадеш низа на eval, да инстанцира подходящ
обект.
@Виктор:
Аз имам въпрос относно финалния тест върху решенията ни. Ще се правят ли
проверки тип assertRaises на други класове освен GeometricError (например
ZeroDivisionError, AttributeError). Аз лично навсякъде където може да гръмне
програмата ми (недефинираните случаи) съм настроил да вика GeometricError, така
че ще е добре да знам дали трябва да разкарам тази функционалност.
Само за GeometricError ще проверяваме.
Иначе - няма лошо, стига да не си прекалил :)
@Димитър:
Конструкор Line(a, b), приемащ 2 точки или вектор и точка да го разбираме
като ... Line( Vector( v1,v2 ), Point( p1,p2,p3 ) ) или като Line( Point(
p1,p2,p3 ), Vector( v1,v2 ) ) Или пък като двете..
Като двете.
Също така има и трето: Line(Point(x1,y1,z1), Point(x2,y2,z2))
... никой въпрос не е пропуснат, надявам се...
21.04.2010
(променeно 21.04.2010)