La toile est cool ! - page 8

 
Nikolai Semko:
C'est ce que je pensais. Je pensais à toi l'autre jour.
J'ai pensé : Peter doit travailler dur et le monde verra bientôt quelque chose de super-duper.
Et j'ai aussi pensé : Et si Pyotr avait maîtrisé la POO maintenant et qu'il donnait à tout le monde une nouvelle classe GUI. ))

Eh bien, le chemin est encore long jusqu'à la classe super-duper. )) ) Je voudrais au moins atteindre une stabilité et une exhaustivité absolues.

Vous devez simplement accepter le fait qu'un état stable dans le processus de développement ne peut être que temporaire.

Vous devez arrêter de vous développer pour atteindre la fin ultime. A un moment donné, cela arrivera. Le potentiel sera épuisé.

J'espère que c'est encore loin).


Un jour, je t'enseignerai mon approche et tu m'enseigneras l'OOP. Alors nous pourrons parler la même langue et comprendre ce qui est plus cool.))

 
Реter Konow:


P.S.S. Depuis combien de temps travaillez-vous sur cette solution ? Si ce n'est pas un secret.

Environ trois heures. Cela a fonctionné la deuxième fois, quelques minutes après la première compilation.
Il n'y a rien de compliqué. Vous dessinez deux grilles de cellules carrées : une originale, l'autre avec une nouvelle échelle. Et tout devient clair. La seule formule dont vous avez besoin est l'aire rectangulaire ;)).

La fonction de mise à l'échelle elle-même représente environ 50 lignes de code.

ReTeg Konow:

Je vois. Vous avez commencé par "pimper" le kanvas, puis vous êtes passé aux contrôles ?

Mon gui sera méga léger. Littéralement 3-5 contrôles. Je n'ai même pas besoin de listes déroulantes.

 
Nikolai Semko:

pendant environ trois heures. Cela a fonctionné la deuxième fois, quelques minutes après la première compilation.
Il n'y a donc rien de compliqué. Vous dessinez deux grilles de cellules carrées : une avec l'échelle originale et une avec la nouvelle échelle. Et tout devient clair. Vous n'avez besoin que d'une seule formule - l'aire du rectangle).

Vous avez un esprit plus mathématique. J'ai plus de facilité à visualiser les mécanismes projetés dans mon esprit. Peut-être que c'est parce que je le fais plus... Récemment, j'ai travaillé sur la tâche de diviser une couleur en une gamme de tons. Comme il est implémenté dans la palette de couleurs de Windows, et j'ai soudainement réalisé que j'avais oublié beaucoup de mathématiques. Il faut maintenant arrondir les angles, lisser les ombres, mettre à l'échelle les bitmaps. En gros, ce que vous faites maintenant.


Mon kanvas sera méga léger. Littéralement 3-5 contrôles. Je n'ai même pas besoin de listes déroulantes.

Et comment l'interface graphique fonctionnera-t-elle sans listes déroulantes ?

 
Nikolai Semko:

Retour au travail. Nous en reparlerons.

Des victoires créatives pour toi, Nikolaï !

 
George Merts:

Non, c'est vraiment impressionnant.

Mais vous devez créer une sorte de module complémentaire utile qui tire parti de toutes ces fonctionnalités de Canvas.

Pour que vos développements ne subissent pas le même sort que l'adaptateur CGA - un merveilleux adaptateur graphique, incompris et sous-estimé par ses contemporains.

Pour ma part, j'ai toujours considéré que le CGA était "boiteux comme jamais" face aux graphiques huit bits du Commodore 64 ou du Sinclair Spectrum. Mais il s'est avéré récemment que, simplement en raison d'un manque de popularité, presque personne n'a utilisé toutes les possibilités de cette carte. Et il n'y avait pratiquement aucun jeu capable de rivaliser avec les ordinateurs de salon huit bits.

Si IBM avait fait la promotion du CGA, si cette démo était apparue en 1981, le CGA aurait été beaucoup plus populaire, et l'EGA serait peut-être apparu plus tard :


Quand je regarde ce NOMBRE DE COULEURS, je n'arrive pas à croire que ce soit possible avec un vieil adaptateur CGA et sa mémoire vidéo de 16K, connecté à un téléviseur ordinaire (un moniteur RVB n'est pas bon du tout, c'était l'idée - un texte de meilleure qualité sur un moniteur RVB, mais une gamme de couleurs médiocre, mais beaucoup de possibilités graphiques avec un texte mal lisible sur un téléviseur avec une entrée composite).

Il n'y avait rien de génial, c'était nul. J'ai travaillé avec lui sur le premier ordinateur de notre cabinet. Vous pouviez afficher des graphiques de mesures dans sa plus haute résolution uniquement en noir et blanc. Je ne me souviens pas de la résolution, mais verticalement, elle était de 200 pixels. Horizontalement, elle semblait être de 800. Bien que mon ordinateur avait 512 Kb de RAM :)) Mon Dieu, comme je suis vieux)).

 
Реter Konow:

Un jour, je t'enseignerai mon approche et tu m'enseigneras l'OOP. Nous pourrons alors parler la même langue et décider de ce qui est le plus cool).

Peter, tu réinventes l'interprète et j'adore le compilateur.

Tag Konow:

Et comment l'interface graphique fonctionnera-t-elle sans listes de contrôle ?

Brillant! ))

Eh bien, peut-être que je le ferai.

Retag Konow:

Retour au travail. Nous en reparlerons.

Des victoires créatives pour toi, Nikolaï !

Merci, Pyotr. De même !

 
Alexey Volchanskiy:

Il n'y avait rien de génial, c'était nul. J'ai travaillé avec lui sur le premier ordinateur de notre entreprise. Les graphiques de mesure ne pouvaient être édités qu'à leur plus haute résolution, en noir et blanc. Je ne me souviens pas de la résolution, mais verticalement, elle était de 200 pixels. Horizontalement, elle semblait être de 800. Bien que mon ordinateur avait 512 Kb de RAM :)) Mon Dieu, je suis si vieux.)

Bien. Toi aussi, Alexei !

N'oubliez pas, c'était en 1981. Vous ne pouviez avoir que 16 Ko de mémoire à bord. La même quantité se trouvait dans l'adaptateur. Et vous payeriez 1500 $ pour ça !

Et pour "512 kb RAM" - vous devrez payer 3 000 $ !


640x200 avec ce type de mémoire est une très haute résolution - c'était la meilleure résolution disponible à l'époque (320x200 était la norme et la plupart d'entre eux étaient alphanumériques).

Vous, Leha, venez d'avoir un décalage dans le temps... Vous mesurez la technologie de la fin des années 70 avec une règle, si je comprends bien, de la fin des années 80, voire même plus tard.

Si vous voulez des graphiques nets, 640x200x2 est une qualité assez décente. Voulez-vous des graphiques en couleur ? CGA les a - 320x200x4, deux options de palette fixe.

Pour les affaires, c'est suffisant.

Vous voulez jouer à des jeux ? Prenez un téléviseur ordinaire (ou un moniteur composite) - là, vous obtenez 320x200x16 (mais la couleur pour deux points adjacents était la même). Les lettres normales commenceront à "briller en couleur", mais pour les jouets, c'est sans importance, soit il n'y a pas de lettres, soit ce sont des sprites, de grande taille.

Ça ne craint pas, Leha. C'est une carte très cool.

 
Реter Konow:

:))

Bien joué, cependant ! Mais je n'ai pas besoin du code, je veux y arriver moi-même.

P.S. Et pourquoi "âme perdue" ? Est-ce que je renie le saint OOP ? :))

P.S. Avez-vous mis longtemps à trouver une solution ? Si ce n'est pas un secret.

Voulez-vous inventer quelque chose de mieux que ce qui a été inventé il y a longtemps ? 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:

Bien joué, cependant ! Mais vous n'avez pas besoin de poster le code, je veux y arriver moi-même.

Oh, s'il vous plaît.
Je vais vous faciliter la vie.

Je vais vous donner le code à titre d'exemple.

Bien sûr, nous pourrions mettre en œuvre un algorithme plus rapide. Mais c'est la première chose qui m'est venue à l'esprit.

Dossiers :
TestScaling.ex5  514 kb
Scaling.ZIP  399 kb
 
Georgiy Merts:

C'est vrai. Toi aussi, Alexei !

N'oubliez pas, c'était en 1981 ! Vous ne pouviez avoir que 16Kb de mémoire à bord ! La même quantité se trouvait dans l'adaptateur. Et vous payeriez 1500 $ pour ça !

Mais pour "512 Ko de RAM", vous devrez payer 3 000 $ !


640x200 avec ce type de mémoire est une très haute résolution - c'était la meilleure résolution disponible à l'époque (320x200 était la norme et la plupart d'entre eux étaient alphanumériques).

Vous, Leha, venez d'avoir un décalage dans le temps... Vous mesurez la technologie de la fin des années 70 avec une règle, si je comprends bien, de la fin des années 80, voire même plus tard.

Si vous voulez des graphiques nets, 640x200x2 est une qualité assez décente. Voulez-vous des graphiques en couleur ? CGA les a - 320x200x4, deux options de palette fixe.

Pour les affaires, c'est suffisant.

Vous voulez jouer à des jeux ? Achetez une télévision ordinaire (ou un moniteur composite) - là, vous obtenez 320x200x16 (mais la couleur pour deux points adjacents était la même). Les lettres normales commenceront à "briller en couleur", mais pour les jouets, c'est sans importance, soit il n'y a pas de lettres, soit ce sont des sprites, gros.

Ça ne craint pas, Leha. C'est une carte très cool.

Je me souviens très bien de cette époque, mais je ne suis pas nostalgique. Et je me souviens du bus ISA, c'était le dernier bus pour lequel j'ai fabriqué des planches de mesure maison pour l'équipement, que j'ai peintes avec du vernis à ongles et gravées au fer chloré. Je suis nostalgique de ma jeunesse et des filles, mais pas du fer à repasser de l'époque ;))

Et 81 était pour l'Ouest, pour moi c'était vers 90. En 81 ou un peu plus tard, j'ai appris dans le bon vieux Bonch-Bruevich à programmer sur un ordinateur Nairi, qui était un développement domestique du début des années 60, sans moniteur, mais avec une machine à écrire qui était utilisée pour le dialogue. Pas nostalgique non plus ;)).