amarao (amarao_san) wrote,
amarao
amarao_san

Category:

выдыхаем, выдыхаем

Уф, я перевёл getPath на контекстный менеджер. Стало меньше строк, уже, хотя я ничего, кроме контекстного менеджера и его функций не добавлял. Ощущение, как будто бежал по болоту по кочкам и, кажется, почти ничего не замочил.

Теперь можно начинать разбираться с этим ужасом в районе "if (int(occversion[0]) >= 7) and (int(occversion[1]) >= 1):"

Ужас не в этой проверке, а вот тут:
                            snip = Drawing.projectToSVG(e,drawing_plane_normal)
                            if snip:
                                try:
                                    a = "A " + snip.split("path d=\"")[1].split("\"")[0].split("A")[1]
                                except:
                                    pass
                                else:
                                    edata += a
                                    done = True


Во-первых у меня оно сейчас прикрыто raise NotImplemented, и оно не рейзится, значит, я этот кусок кода не трогаю в тестах. Это означает, что мне сейчас придётся делать соседний бранч и в нём пытаться выковырять с помощью print'ов что там приходит-уходит, чтобы таки этот тест написать.

Во-вторых, это просто какой-то ужас. Я могу сохранить его, и всего лишь передать эту "a" в path.elliptical_arc. Дополнительный фан состоит в том, что Drawing - это нифига не питон, это добрый-добрый C++, который реализует интерфейс для питона. В нём на 100+ строк написано главное:

ProjectionAlgos Alg(pShape->getTopoShapePtr()->getShape(),Vector);

И я это даже понять не могу. Либо это макрос, либо это какая-то фича С++, которой я не знаю (синтаксически).

Другими словами, "нам с этим жить". А жить будет БОЛЬНО (особенно в тестах), потому что у меня:

>>> Part.OCC_VERSION
'6.9.1.oce-0.18'
А ещё я не знаю, что такое 'occ' (oce). Примерно происходит от "OpenCASCADE Community Edition"... Ой, моки меня зовут, ой зовут...
Tags: freecad, рефакторинг
Subscribe

  • фурикури

    Я тут его ещё раз пересмотрел, и за гламурным дребезгом (который хорош), я, наконец-таки, рассмотрел сюжет. Первые три серии (я про оригинальный…

  • поздне-анимешное

    Один из интересных водоразделов между западной и восточной (японской, японской) культурой я вижу в районе толстовской фразы "Все счастливые семьи…

  • berserk 2017

    Внезапно, если кто не заметил, уже аж 4 серии нового сезона. И он не менее офигенен, чем предыдущий. При том, что местами анимация провисает, история…

  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 7 comments