A função de decompor a cor em tons. - página 3

 
Nikolay Demko:
HSL

Eu dei uma olhada. Horrorizado. Olhou novamente. :)

A questão é: quanto tempo leva para se chegar a soluções como esta? Cheguei à conclusão de que teria mais valor se eu mesmo encontrasse a solução.

  1. Foi relativamente rápido. Com a solução da Wikipedia, não sei quanto tempo teria demorado.
  2. Isso enriqueceu minha experiência. Agora eu sei como resolver a cor.
  3. É fácil integrar a solução encontrada no meu programa e desenvolvê-la ainda mais.
Portanto, foi mais rentável resolver o problema por mim mesmo.
 
Georgiy Merts:

...

* * *

1. Como corretamente apontado acima - existem sistemas HSL e HLS, que há muito foram padronizados, e as transições para eles a partir do RGB são feitas com fórmulas padrão. Existe também o sistema Lab. Para que serve reinventar a roda?

...

2. gostaria de ver exemplos concretos de aplicações, mesmo sem revelar o código fonte - apenas a idéia de onde tudo isso poderia ser aplicado de forma útil ?

1. Sobre a bicicleta. Olhe, George, Nikolai forneceu uma solução da classe CCanvas. Como desenvolvedor, o que você acha - é conveniente ler/usar/desenvolver? Pessoalmente, acho isso desconfortável. Eis o porquê:

  • A legibilidade deixa muito a desejar.
  • O uso é complicado pelo fato de não haver uma função coerente que devolva todos os matizes. Você tem que manter o relacionamento com toda a biblioteca. Tudo é dividido em muitas funções. Isto é inconveniente.
  • O desenvolvimento e integração de tal solução é complicado pela inter-relação confusa com as funções e objetos de acompanhamento da classe conectada. A solução é incoerente.

Agora sobre minha solução.

  • A leitura é praticamente sem comentários. Se você conhece o conceito, você pode se lembrar das nuances rapidamente.
  • O uso é simplificado. Não há necessidade de conectar nada. A função é um mecanismo simples. Você envia um pedido - você recebe o resultado.
  • É muito fácil integrar e desenvolver minha solução. Insira a função no programa, envie a cor, obtenha a matriz de cores. Em seguida, você cria e constrói loops para desenhar diferentes gradientes, formar a topografia de superfície e obter o efeito 3D.

Portanto, esta solução não é de modo algum uma bicicleta como você pensa.


2. Estranho que você não tenha visto exemplos de uso prático. Meu perfil está cheio deles.
 
Georgiy Merts:


Muitas pessoas escrevem pequenos anexos úteis. Mas até agora vejo que apenas o fxsaber apresentou uma biblioteca que, na minha opinião, é muito útil para literalmente todos. Não conheço um trabalho tão volumoso, mas de utilidade geral. Neste caso, com Canvas, é ainda mais triste - não consigo imaginar onde tudo isso poderia ser aplicado de uma forma que seria útil para qualquer parte discernível da audiência do fórum.

Sim, eu também estou triste, George. Por quase três anos neste fórum, tenho tentado explicar por que o software de negociação precisa de uma GUI. Eu resolvi um grande número de tarefas para criá-lo. Entre essas tarefas estavam tanto as simples como as incrivelmente complexas. Mas eu nunca resolvi uma tarefa mais reforçada do que explicar às pessoas aqui porque elas precisam dela.

O que é absolutamente claro para mim é incompreensível para eles. É uma diferença fenomenal na compreensão.

Você escreve centenas de robôs comerciais. Esses robôs não precisam de ajustes? Eles o fazem. Portanto - eles precisam de ajustes. Controles.

Você negocia no mercado. Não acontecem eventos inesperados no mercado e você quer ser informado imediatamente? Sim, eles acontecem. Portanto, você precisa de janelas de mensagens.

Você faz pesquisas sobre os padrões de mercado. Os padrões não são melhor observados através de gráficos e tabelas? Melhor. Portanto, você precisa de janelas com gráficos e tabelas.

Você está otimizando os robôs. Não é melhor exibir os resultados da otimização em janelas de relatórios? Melhor. Portanto, você precisa de janelas de relatório.

Você coleta estatísticas comerciais para cada robô comercial. Não é melhor mostrar essas estatísticas em detalhes nas janelas do relatório? Melhor, portanto, você precisa de janelas para exibir estatísticas.

O mesmo pode ser dito sobre as configurações de gerenciamento de risco, sobre IA, MO e outras coisas. Quanto mais complexo for o programa, mais configurações, tabelas e gráficos ele deve ter. Quanto mais ela tem que interagir com o usuário.


Depois de tudo isso, você ainda acha que os programas comerciais não precisam de GUI? Se assim for, não tenho mais nada a dizer a você.

 
Реter Konow:

George, eu debugo o código na minha cabeça. :) Eu sempre fiz isso. Procuro os erros pela lógica do raciocínio. A função Alerta() é muito útil;

Isso é legal. Também posso fazer isso, embora use a saída para um arquivo de log, mas para mim é muito mais conveniente olhar diretamente para as variáveis.

 
Georgiy Merts:

Isso é legal. Eu também posso fazer isso, embora use a saída para um arquivo de log, mas é uma grande tensão para mim. É muito mais conveniente visualizar as variáveis diretamente.

A questão é que você pode fazer sem um depurador, mas eu não estava pronto para sacrificar a conveniência do desenvolvimento da língua nativa por ele.

Eu sempre escolho a melhor solução. Confie em mim. Se eu não souber, sei onde encontrá-lo. O desenvolvimento em uma língua nativa lhe dá uma vantagem que nenhum depurador pode cobrir.

 
Реter Konow:

Sim, eu também estou triste, George. Por quase três anos, neste fórum, tenho tentado explicar por que o software de negociação precisa de uma GUI. Eu resolvi um grande número de tarefas para criar uma. Entre essas tarefas estavam tanto as simples como as incrivelmente complexas. Mas eu nunca resolvi uma tarefa mais reforçada do que explicar às pessoas aqui porque elas precisam dela.

O que é absolutamente claro para mim é incompreensível para eles. É uma diferença fenomenal na compreensão.

Você escreve centenas de robôs comerciais. Esses robôs não precisam de ajustes? Eles o fazem. Portanto - eles precisam de ajustes. Controles.

Você negocia no mercado. Não acontecem eventos inesperados no mercado e você quer ser informado imediatamente? Sim, eles acontecem. Portanto, você precisa de janelas de mensagens.

Você faz pesquisas sobre os padrões de mercado. Os padrões não são melhor observados através de gráficos e tabelas? Melhor. Portanto, você precisa de janelas com gráficos e tabelas.

Você está otimizando os robôs. Não é melhor exibir os resultados da otimização em janelas de relatórios? Melhor. Portanto, você precisa de janelas de relatório.

Você coleta estatísticas comerciais para cada robô comercial. Não é melhor mostrar essas estatísticas em detalhes nas janelas do relatório? Melhor, portanto, você precisa de janelas para exibir estatísticas.

O mesmo pode ser dito sobre as configurações de gerenciamento de risco, sobre IA, MO e outras coisas. Quanto mais complexo for o programa, mais configurações, tabelas e gráficos ele deve ter. Quanto mais ela tem que interagir com o usuário.

Depois de tudo isso, você ainda acha que os programas comerciais não precisam de GUI? Se assim for, não tenho mais nada a dizer a você.

O que acontece, Peter, é que tudo isso, creio, deve ser "de uma vez por todas, permanentemente" amontoado no fundo do poço. Meus robôs comerciais não têm UM (!!!) cenário. Se eu os oferecesse a alguém (de graça ou por dinheiro) - eles teriam apenas um cenário - o percentual de risco. É isso aí!

Veja.

É claro, os robôs estão sendo constantemente ajustados. No entanto, esta correção, em minha opinião, não deveria vir de uma interface guiada. O ideal é que o robô procure automaticamente o histórico, selecione os melhores parâmetros, guarde-os para si mesmo e continue trabalhando. Ele não precisa fazer nenhum ajuste "de um humano".

De fato, são necessárias informações sobre eventos inesperados. Mas, na minha opinião, a produção é suficiente. Janela de mensagem - como é melhor do que a mesma impressão? A janela é útil quando precisamos exibir informações de uma forma estruturada, na forma de tabelas, links e similares. No entanto, este não é de modo algum um caso de "eventos importantes" !

Resultados de otimização de saída - mais uma vez, para a percepção humana, é verdade, é meio conveniente ter uma janela separada. Mas como estes resultados devem ser utilizados? No meu caso, eles são usados para criar um bloco de código que é então "carregado" no bot. Você não acha que a janela é inútil neste caso? Os resultados da otimização são gerados em meu arquivo como um bloco de código que é então escrito para o bot através de copy-paste. Receio que uma janela separada na tabela não permita isso.

O mesmo vale para as estatísticas - eu não preciso delas em janelas, preciso delas em arquivos de relatório!

Mensagem para o usuário, eu tenho dito muitas vezes que sou um adepto do TS mais simples e "burro". Tais sistemas não precisam de nenhuma "interação do usuário".

Resumo:

Eu adoraria ter uma GUI, mas temo que a GUI que tenho não cubra minhas necessidades e que sua complexidade aumente drasticamente.

No entanto, admito que outros podem achar a GUI útil. Antes de mais nada - para comércio semi-automático.

É por isso - eu digo, Peter, que você precisa "dramatizar a idéia". Então o público se interessará, e então os usuários se interessarão.

Tomemos o exemplo da Liga TC. Agora poucas pessoas se lembram do fio condutor em que apresentei a idéia da Liga há um ano e meio atrás. Na maioria das vezes houve cepticismo e apenas alguns participantes interessados. Na verdade - o mesmo que você, eu posso ver analogias diretas. Agora, em outro fórum - um participante me disse isso - "dramatize a idéia". Torne seu trabalho memorável, ou melhor ainda, vívido. Ele me deu alguns exemplos, dos quais só me lembro de Lavoisier (Lavoisier estava provando que a teoria do phlogiston estava errada. As experiências de queima de várias substâncias em um recipiente selado não impressionaram seus colegas. Então, ele queimou um diamante. O experimento foi muito caro e atraiu a atenção de muitos, falou-se do experimento e, ao mesmo tempo - começaram a falar sobre a teoria do clogistão, contra a qual mais e mais fatos começaram a aparecer). Então este participante me indicou que eu deveria abrir uma filial na qual pudesse publicar regularmente os resultados do conjunto TC (naquela época a Liga TC ainda não era assim chamada), e organizar algo como um "relatório de competição" para torná-lo interessante. Eu abri o ramo (passado), e me certifiquei de que o fizesse. Até encontrei duas pessoas que me ajudaram com os testes. Agora - uma nova filial foi aberta. E qualquer pessoa regular do fórum, penso eu, sabe do que se trata a Liga TC. Muitos riem ironicamente, outros observam com interesse. Mas tenho certeza de que todos há muito tempo "uniram" em sua mente meu nome, o Garfo Sangrento (meu avatar) e a Liga TC. A propósito, o "som", nome vistoso "TC League" parece desempenhar um papel também.

Você tem que ter algo pronto que seja de interesse para o povo. Digamos, aqui, com o mesmo comércio semi-automatizado, no qual janelas e GUI são muito apropriadas. Especialmente porque a GUI para "brilho" tem muitas possibilidades.

 
Georgiy Merts:


Interação do usuário, eu já disse muitas vezes que sou a favor dos TCs mais simples e "burros ". Tais sistemas não devem ter nenhuma "interação do usuário".

George, parece haver aqui muitos apoiadoresdos TCs mais simples e "burros ". Portanto, não posso explicar nada a eles...))

Georgiy Merts:


Naturalmente, os robôs estão sendo constantemente ajustados. Entretanto, esta correção - na minha opinião - não deve ser feita a partir da interface gui. Idealmente, o robô deveria correr automaticamente através do histórico, selecionar os melhores parâmetros, salvá-los e continuar a trabalhar. Não é necessário fazer nenhum ajuste "de um humano".

Os robôs burros não precisam realmente de muitos ajustes. Uma estratégia simples, otimização e ir!

Georgiy Merts:


Informações sobre eventos inesperados - de fato, é necessária uma saída. Mas, na minha opinião, o resultado é bom o suficiente. Janela de mensagem - como é melhor do que Imprimir? A janela é útil quando precisamos exibir informações de uma forma estruturada, na forma de tabelas, links e similares. No entanto, este não é de modo algum um caso de "eventos importantes" !

Por que precisamos de um carro estrangeiro, se o carro nos serve bem?) O que existe, saída estruturada de informações? Para quê?! ))

 
Que milagre... A cor foi disposta na GUI. Mas é um negócio como sempre.
 
Georgiy Merts:


Resumo:

Eu adoraria ter uma GUI, mas temo que a GUI que tenho não cubra minhas necessidades e aumente seriamente a complexidade do software.

No entanto, admito que outros podem achar a GUI útil. Antes de mais nada - para comércio semi-automático.

É por isso - eu digo, Peter, que você precisa "dramatizar a idéia". Então o público se interessará, e então os usuários se interessarão.

Tomemos o exemplo da liga TC. Agora poucas pessoas se lembram do fio condutor em que apresentei a idéia da Liga há um ano e meio atrás. Na maioria das vezes houve cepticismo e apenas alguns participantes interessados. Na verdade - o mesmo que você, eu posso ver analogias diretas. Agora, em outro fórum - um participante me disse isso - "dramatize a idéia". Torne seu trabalho memorável, ou melhor ainda, vívido. Ele me deu alguns exemplos, dos quais só me lembro de Lavoisier (Lavoisier estava provando que a teoria do phlogiston estava errada. As experiências de queima de várias substâncias em um recipiente selado não impressionaram seus colegas. Então, ele queimou um diamante. O experimento foi muito caro e atraiu a atenção de muitos, falou-se do experimento e, ao mesmo tempo - começaram a falar sobre a teoria do clogistão, contra a qual mais e mais fatos começaram a aparecer). Então este participante me indicou que eu deveria abrir uma filial na qual pudesse publicar regularmente os resultados do conjunto TC (naquela época a Liga TC ainda não era assim chamada), e organizar algo como um "relatório de competição" para torná-lo interessante. Eu abri o ramo (passado), e me certifiquei de que o fizesse. Até encontrei duas pessoas que me ajudaram com os testes. Agora - uma nova filial foi aberta. E qualquer pessoa regular do fórum, penso eu, sabe do que se trata a Liga TC. Muitos riem ironicamente, outros observam com interesse. Mas tenho certeza de que todos há muito tempo "uniram" em sua mente meu nome, o Garfo Sangrento (meu avatar) e a Liga TC. A propósito, o nome "sonoro", espetacular "TC League" parece desempenhar um papel também.

Você tem que ter algo pronto para ir, algo que seria de interesse para o povo. Digamos, aqui, com o mesmo comércio semi-automatizado, no qual janelas e GUI são muito úteis. Especialmente porque a GUI para "brilho" tem muitas possibilidades.

É mais agradável para mim ler...))

 
Реter Konow:

George, parece haver aqui muitos adeptosdos TCs mais simples e mais "de carvalho" . Portanto, não posso explicar nada a eles...))

Robôs burros realmente não precisam de muita afinação. Uma estratégia simples, otimização e ir!

Por que precisamos de um carro estrangeiro se o carro nos serve bem?) O que existe, uma saída estruturada de informações? Para quê?! ))

Até agora, existe apenas um carro estrangeiro pintado. Por que as pessoas precisam de um carro estrangeiro pintado, quando o carro é real e serve?