Pull to refresh
43
0
Imposeren @Imposeren

User

Send message
Кстати насчёт оттенков серого: автор мог бы всё же поинтересоваться, и узнать, что обычно берется не среднее, а что-то вроде
(R*30 + G*59 + B*11)/100
c = max(c, 0)
c = min(c, 255)


А лучше вынесли бы в отдельную функцию:
def limit(value, low=0, high=255):
    return min(max(value, low), high)
человек же не про тетрадь спрашивает а про графы. Можно ли адаптировать алгоритм под граф с 6ю связями?
Кстати у меня тоже Calculate, всё еще по привычке называю его генту. Полностью удалял .local/share/steam — не помогло
А под генту после недавнего обновления вообще стим перестал запускаться, грусть, тоска
Под «крылом» Apple(a) есть акие вещи как CUPS и Clang. И ничего страшного, как были опнсорс так и остались. Да они тролли известные и жадные, но то что уже открыто вроде не закрывают.
Ну удачный случай я подобрать не смог, а все свои старые эксперименты я потерял.

Вот файлы для проверки:
gist.github.com/4030438

imp@home ~/zz/cython $ python pyt.py 
12.2809770107
imp@home ~/zzz/cython $ python cyt.py
10.8371829987


Отрыв хоть и небольшой, но сохраняется постоянно. У них там есть какая-то магия с numpy — вроде всё что использует его может ускорится.

Ну а в целом всё-равно нужно прибегать к дополнительной магии: если добавить еще один файл который подскажет cython`у где какие типы переменных, то отрыв сразу увеличится, а модуль при этом всё-равно можно будет импортировать как скомпилированный, так и не скомпилированный,

Например в файл v2d.pxd добавим такое:
cimport cython

cdef class v2d(object):
    cdef public float __x, __y


и запустим заново:
imp@home ~/zzz/cython $ python cyt.py
8.40173888206
...
8.0


И так можно дальше улучшать, например как в предыдущем комментарии взять функции из math.h и использовать их. Еще можно взять и переопределить функции:
cimport cython

cdef class v2d(object):
    cdef public float __x, __y

    cpdef float get_length(self)

В данном случае это прироста в скорости не дало, может быть даже замедлило

Еще можно обойтись и без создания pxd и писать прямо в .py файле сохраняя совместимость (см v2d_pure.py)
В данном случае вс' стало даже медленнее.

Реальные ускорения можно получить если поступать так:
Делать большинство методов чисто сишнымии во внтутренних рассчётах использовать из, а наружу выставлять уже функции питона

pyfile:
@cython.cfunc
@cython.returns(cython.float)
@cython.locals(x=cython.float, y=cython.float)
def __cget_length(self, x, y):
    pass

@cython.cfunc
@cython.returns(cython.float)
@cython.locals(x=cython.float, y=cython.float, z=cython.float)
def __ccomplex_calcs(self, x, y):
    z = self.__cget_length(x, y) ** 8 * self.__cget_anima()

def get_length(self, x, y):
    return self.__cget_length(x, y)

def complex_calcs(self, x,y):
    return self.__ccomplex_calcs( x, y)


Мне этот «Pure» режим что-то выглядит стрёмно — pxd файл как-то попроще.

*.pxd: +simpler, -harder to sync
@cython.decorators: -huge, +always up to date

Ну а вообще если хочется из него выжать всёи получить прирост в скорости десятки и сотни раз, то надо использовать сишные функции как в комментарии выше, писать сразу pyx файл, а не разбивать на py and pxd. В чем еще преимущество cython, так это в том, что на выходе можно получить библиотеку v2d.so и использовать её хоть прямиком из Си, так-что те кто си не любит может всё-равно выдавать для него либы
Не знал, спасибо. Забанить не должны?
Под вайном не работает. Да и мне не нравится только на изображениях вещей мыло, сама игра нормально смотрится.
Вот только жаль что размітие влияет и на обычные «картинки». Вот если сравнить изображения вещей на сайде и в игре, то видно, что в игре они размыты, похоже что «мылится» весь экран в не зависимости от того модель это или битмап. Неприятно как-то.
Стоило бы еще упоминуть про cython: для арифметики он нормально заменяет ctypes и при этом более дружелюбный для тех кто не знает или не любит C. Кроме того он еще и более менее нормальные классы понятные для питона позволяет писать.

немного найденого кода из pygame PaintBrush
cimport cython
import operator
import math

cdef extern from "math.h":
    double sqrt(double x)
    double atan2(double y, double x)
    double cos(double x)
    double sin(double x)
    double floor(double x)

cdef class v2d(object):
    cdef public double x, y
    def __init__(self, x, y=None):
        if x is not None and y is not None:
            self.x = float(x)
            self.y = float(y)
        elif type(x) == v2d:
            self.x = x.x
            self.y = x.y
        elif type(x) == list or type(x) == tuple:
            self.x = x[0]
            self.y = x[1]
        else:
            raise TypeError()
    
    # Position
    def get_pos(self):
        return (self.x, self.y)
    def set_pos(self,pos):
        self.x = float(pos.x)
        self.y = float(pos.y)
    pos = property(get_pos, set_pos)

    def get_int_pos(self):
        cdef int x, y
        x = int(floor(self.x))
        y = int(floor(self.y))
        return(x,y)
    ipos = property(get_int_pos, set_pos)

# ...


А в некоторых случаях можно вообще писать чистый питон код и он его «ускорит».
попробуйте hugin, но я не уверен, что он с таким справится.
На таких скоростях уже можно сражаться обычными пулями — неплохо будут разносить всё в пылть при полёте навстречу друг-другу. Однако если продетели мимо, то уже не встретитесь. А если оба движутся с такой скоростью, но при этом относительно друг-друга с малой, то это всё будет влиять лишь на «статику» вокруг
А вот если взять какой-нибудь алгоритм который понижает цветность картинки с уётом какого-нибудь качественного дизеринга, а потом взять результирующую палитру? Я конечно понимаю, что останется проблема подбора количества цветов, но резулььтат должен получиться удовлетворительный?
SKA это массив радиоприёмников, и не факт что суперпозиция считается сразу — вполне возможно что пишут данные с каждого элемента отдельно, а уже потом обрабатывают.
Если подключается куча всякого социального хлама, то актуально и сейчас, т.к. этот хлам иногда сильно всё замедляет
Вы еще вспомните, что там было 700 вопросов. Вот на месте присяжных вы бы рассматривали каждый вопрос? Я думаю они бы там решили по этим 7 патентам, а потом ставили просто: эти 85 вопросов за эпл, эти 15 за самсунг
патенты то видели? Мне кажется что кроме пром.образцов всё такая банальщина, что фиг придумаешь что-то новое.
Если интересно то могу то могу показать поделиться «цветными» инидкаторами — можно настроить какое значение будет зелёным, какое красным, цвет плавно меняется между значениями. Кроме того индикатор загрузки памяти ( с вычетом всяких кешей и прочего). Индикатор загрузки Процессора от 0 до 100% (с учётом количества ядер, а то странно видеть 200-400%).
Ну и индикатор раскладки с помощью kbdd
Тесты это по сути тоже исходный код и тоже под какой-то лицензией. Вполне возможно что в файлах тестов не упоминалась лицензия, но как правило лицензию пихают в начало каждого дажее бесполезного файла. Лично код mysql не смотрел, так-что не знаю

Information

Rating
Does not participate
Location
Киевская обл., Украина
Date of birth
Registered
Activity