A lona é legal! - página 8

 
Nikolai Semko:
Isso foi o que eu pensei. Eu estava pensando em você no outro dia.
Eu pensei: Peter deve estar trabalhando duro e o mundo logo verá algo super-duper.
E eu também pensei: E se Pyotr domina agora o OOP e dará a todos uma nova classe GUI. ))

Bem, ainda é um longo caminho até a classe super-duper. )) ) Eu gostaria, pelo menos, de alcançar estabilidade absoluta e completude.

Basta aceitar o fato de que um estado estável no processo de desenvolvimento só pode ser temporário.

Você tem que parar de se desenvolver a fim de alcançar o fim último. Em algum momento isso vai acontecer. O potencial será esgotado.

Espero que ainda seja um longo caminho).


Algum dia eu lhe ensinarei minha abordagem e você me ensinará o OOP. Então seremos capazes de falar a mesma língua e descobrir o que é mais legal)).

 
Реter Konow:


P.S.S. Há quanto tempo você está trabalhando na solução? Se não for um segredo.

Cerca de três horas. Funcionou na segunda vez, alguns minutos após a primeira compilação.
Não há nada de complicado aí. Você desenha duas grades de células quadradas: uma original, a outra com uma nova escala. E tudo se torna claro. A única fórmula que você precisa é de área retangular )).

A função de escalonamento em si é cerca de 50 linhas de código.

ReTeg Konow:

Estou vendo. Você começou com o "proxenetismo" do kanvas, e a partir daí passou para os controles?

Minha astúcia será mega leve. Literalmente 3-5 controles. Não preciso nem mesmo de listas suspensas.

 
Nikolai Semko:

por cerca de três horas. Funcionou na segunda vez, alguns minutos após a primeira compilação.
Portanto, não há nada de complicado aí. Você desenha duas grades de células quadradas: uma com o original e outra com a nova escala. E tudo se torna claro. Você só precisa de uma fórmula - a área do retângulo).

Você tem uma mente mais matemática. Tenho uma visão mais fácil dos mecanismos projetados em minha mente. Talvez isso seja porque eu faço mais... Recentemente, tenho trabalhado na tarefa de dividir uma cor em uma gama de tons. Como ela é implementada na paleta de cores do Windows, e de repente percebi que me esqueci de muita matemática. Agora você precisa de arredondamento de cantos, suavização de sombras, escala de bitmap. Basicamente, o que você está fazendo agora.


Meu kanvas será megaleve. Literalmente 3-5 controles. Não preciso nem mesmo de listas suspensas.

E como funcionará a GUI sem listas suspensas?

 
Nikolai Semko:

De volta ao trabalho. Vamos conversar novamente.

Vitórias criativas para você, Nikolai!

 
George Merts:

Não, é realmente impressionante.

Mas, você tem que fazer algum tipo de adição útil que tire proveito de todas essas características da Tela.

Para que seu trabalho não sofresse o mesmo destino que o adaptador CGA - um maravilhoso adaptador gráfico, mal compreendido e subestimado por seus contemporâneos.

Eu mesmo sempre considerei a CGA como "coxa como sempre" batendo oito bits Commodore 64 ou Sinclair Spectrum. Mas recentemente descobriu-se que, simplesmente por causa da falta de popularidade - quase ninguém utilizou todas as oportunidades deste cartão. E quase não havia jogos que pudessem competir com computadores domésticos de oito bits.

Se a IBM tivesse promovido a CGA, se esta demo tivesse aparecido em 1981, a CGA teria sido muito mais popular, e talvez a EGA tivesse saído mais tarde:


Quando olho para aquele LOT de cores, nem acredito que seja possível com um antigo adaptador CGA com sua memória de vídeo de 16K, conectado a um aparelho de TV comum (o monitor RGB não é bom de todo, essa era a idéia - texto de melhor qualidade no monitor RGB, mas com pouca gama de cores, mas muitas possibilidades gráficas com texto mal legível em um aparelho de TV com uma entrada composta).

Não tinha nada de bom, era uma porcaria. Eu trabalhei com ele no primeiro computador de nossa empresa. Você poderia exibir gráficos de medidas em sua resolução mais alta somente em preto e branco. Não me lembro da resolução, mas verticalmente era de 200 pixels. Horizontalmente, parecia ser 800. Embora meu computador tivesse 512 Kb de RAM :)) Deus, quantos anos eu tenho))).

 
Реter Konow:

Algum dia eu lhe ensinarei minha abordagem e você me ensinará o OOP. Então seremos capazes de falar a mesma língua e decidir o que é mais legal).

Peter, você reinventa o intérprete e eu amo o compilador.

Etiqueta Konow:

E como funcionará a GUI sem listas de verificação?

Brilhante! ))

Bem, talvez eu o faça.

Retag Konow:

De volta ao trabalho. Vamos conversar mais.

Vitórias criativas para você, Nikolai!

Obrigado, Pyotr. Igualmente!

 
Alexey Volchanskiy:

Não tinha nada de bom, era uma porcaria. Eu trabalhei com ele no primeiro computador de nossa empresa. Os gráficos de medição só poderiam ser emitidos em sua mais alta resolução em preto e branco. Não me lembro da resolução, mas verticalmente era de 200 pixels. Horizontalmente, parecia ser 800. Embora meu computador tivesse 512 Kb de RAM :)) Deus, estou tão velho).

Certo. Você também, Alexei!

Não se esqueça que estamos em 1981. Você só poderia ter 16Kb de memória a bordo. A mesma quantidade estava no adaptador. E você pagaria US$ 1.500 por isso!

E por "512 kb de RAM" - você terá que pagar $3000!


640x200 com esse tipo de memória é uma resolução muito alta - essa era a melhor resolução disponível na época (320x200 era padrão e a maioria deles eram alfanuméricos).

Você, Leha, acabou de ter um turno no tempo... Você mede a tecnologia do final dos anos 70 com uma régua, como eu a entendo, no final dos anos 80, se não mesmo mais tarde.

Se você queria gráficos nítidos - 640x200x2 é uma qualidade bastante decente. Você quer gráficos coloridos? A CGA os tem - 320x200x4, duas opções de paleta fixa.

Para os negócios, é bom o suficiente.

Quer brincar? Obtenha uma TV normal (ou monitor composto) - aí você obtém 320x200x16 (mas a cor para dois pontos adjacentes era a mesma). As letras normais começarão a "tremer de cor", mas para os brinquedos, não é importante, ou não há letras, ou elas são sprites, grandes.

Não é uma droga, Leha. É um mapa muito legal.

 
Реter Konow:

:))

Muito bem feito, porém! Mas eu não preciso do código, eu mesmo quero chegar lá.

P.S. E por que "alma perdida"? Eu nego o santo OOP? :))

P.S.S. Há quanto tempo você está trabalhando em sua solução? Se não for um segredo.

Você quer inventar algo melhor do que o que foi inventado há muito tempo? https://en.wikipedia.org/wiki/Image_scaling#Algorithms

Image scaling - Wikipedia
Image scaling - Wikipedia
  • en.wikipedia.org
When scaling a vector graphic image, the graphic primitives that make up the image can be scaled using geometric transformations, with no loss of image quality. When scaling a raster graphics image, a new image with a higher or lower number of pixels must be generated. In the case of decreasing the pixel number (scaling down) this usually...
 
Реter Konow:

Muito bem feito, porém! Mas você não precisa postar o código, eu mesmo quero chegar lá.

Oh, por favor.
Tornarei a vida mais fácil.

Darei a vocês o código como exemplo.

É claro, poderíamos implementar um algoritmo mais rápido. Mas essa foi a primeira coisa que me veio à mente.

Arquivos anexados:
TestScaling.ex5  514 kb
Scaling.ZIP  399 kb
 
Georgiy Merts:

Isso mesmo. Você também, Alexei!

Não se esqueça que estamos em 1981! Você só poderia ter 16Kb de memória a bordo! A mesma quantidade estava no adaptador. E você pagaria US$ 1.500 por isso!

Mas por "512 Kb de RAM" você terá que pagar $3000!


640x200 com esse tipo de memória é uma resolução muito alta - essa era a melhor resolução disponível na época (320x200 era padrão e a maioria deles eram alfanuméricos).

Você, Leha, acabou de ter um turno no tempo... Você mede a tecnologia do final dos anos 70 com uma régua, como eu a entendo, no final dos anos 80, se não mesmo mais tarde.

Se você queria gráficos nítidos - 640x200x2 é uma qualidade bastante decente. Você quer gráficos coloridos? A CGA os tem - 320x200x4, duas opções de paleta fixa.

Para os negócios, é bom o suficiente.

Quer brincar? Obtenha uma TV normal (ou monitor composto) - aí você obtém 320x200x16 (mas a cor para dois pontos adjacentes era a mesma). As letras normais começarão a "tremer de cor", mas para os brinquedos, não é importante, ou não há letras, ou elas são duendes, grandes.

Não é uma droga, Leha. É um mapa muito legal.

Lembro-me muito bem desses tempos, mas não sou nostálgico. E lembro-me do ônibus ISA, foi o último ônibus para o qual fiz placas de medição caseira para equipamentos, que pintei com esmalte de unhas e coloquei com cloro de ferro. Eu fico nostálgico com minha juventude e as meninas, mas não com o ferro naquela época ))

E '81 foi para o Ocidente, para mim foi cerca de '90. Em 81 ou um pouco mais tarde fui ensinado no bom e velho Bonch-Bruevich a programar em um computador Nairi, que foi um desenvolvimento doméstico do início dos anos 60, sem um monitor, mas com uma máquina de escrever que era usada para o diálogo. Também não nostálgico )).