Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Oranlama ?
#1
Merhaba,

Aklıma takıldı da ;
Arduino'daki map() komutu yani belirli değer aralıklarını belirli değer aralıklarına oranlama işlevi delphi tarafında da hazır olarak bulunuyor mu ? Google üzerinde aramalarım yetersiz kaldı. bir sonuca ulaşamadım.
Cevapla
#2
(11-01-2021, Saat: 16:35)Mr.Developer Adlı Kullanıcıdan Alıntı: Merhaba,

Aklıma takıldı da ;
Arduino'daki map() komutu yani belirli değer aralıklarını belirli değer aralıklarına oranlama işlevi delphi tarafında da hazır olarak bulunuyor mu ? Google üzerinde aramalarım yetersiz kaldı. bir sonuca ulaşamadım.


Sitesinde böyle açıklamış

long map(long x, long in_min, long in_max, long out_min, long out_max) {
 return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}

https://www.arduino.cc/reference/en/lang.../math/map/
Herhangi bir insan bilgisayarın anlayabileceği kod yazabilir.  İyi programcılar ise insanların da anlayabileceği kodlar yazarlar. 
Martin Fowler / Refactoring 
Cevapla
#3
Merhaba. 

Bu referansta formül verilmiş :

Demiş ki :
For the mathematically inclined, here’s the whole function

long map(long x, long in_min, long in_max, long out_min, long out_max) {
 return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}



Bu da eğer Integer ve Double işini görecek kadar yerterli ise aşağıdaki gibi. Daha büyük değerler için Int64 tipi kullanabilirsiniz.
function DelphiMap(x, in_min, in_max, out_min, out_max : Integer) : Double;
begin
 result := (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
end;
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla
#4
  function map(x, in_min, in_max, out_min, out_max: Extended): Extended;
  begin
   Result := (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
 end;
not if
WWW
Cevapla
#5
@bydelphi  @mrmarman ve @RAD Coder çok teşekkür ederim. şuan ki örnek trackbar'a endeksli bir sistem olduğundan extended daha pratik oldu.
Tasarımda rotasyon değerleri ile işlem olduğundan - ve + değerler arasında bir geçiş söz konusu idi. Bu da beni işin içinden çıkamaz hale getirdi  Smile matematiği alttan ders olarak alan birisi için ızdırap oldu. En iyisi sormaktır dedim. aslında bahsi geçen formülden haberdim fakat map komutu gibi hazır mı diye merak etmiştim. bir fonksiyon olarak hazırlamak aklıma doğrusunu söylemek gerekirse gelmedi. ellerinize aklınıza sağlık.

Eğitim videoma devam edebilirim  Blush Big Grin
       
Cevapla




Konuyu Okuyanlar: 1 Ziyaretçi