Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2014.06.22;
Скачать: [xml.tar.bz2];

Вниз

Пересортировка численных данных в Memo или ListBox   Найти похожие ветки 

 
Сеньор ©   (2013-08-25 18:43) [0]

см. два текстовых файла первый столбец с координатами Х и второй У. Нужно строку сравнивать с другой строкой, Если координаты Х и У <> 2, то эту строку на до в другую группу значит координаты другой линии и т.д.
в 1-1 исходный файл (запятой там нету сам поставил для наглядности) в файле 1-2 описано к какому виду надо привести файл. Текстовый файл большой на форуме пришлось сократить его до 20 Кб. Кто знает подскажите. Заранее Благодарен!


 
Сеньор ©   (2013-08-25 18:47) [1]

как тут добавить текстовый файл?


 
Сеньор ©   (2013-08-25 18:52) [2]

Придется суда прям написать
Файл 1-1.txt ниже 1-2.txt
448,  1740
448,  1739
448,  1738
448,  1709
448,  1708
448,  1707
448,  1706
448,  1705
448,  1665
448,  1664
448,  1652
448,  1651
448,  1632
448,  1631
448,  1630
448,  1629
448,  1585
448,  1584
448,  1583
448,  1582
448,  1581
448,  1580
448,  1569
448,  1568
448,  1567
448,  1566
448,  1529
448,  1528
448,  1527
448,  1526
448,  1487
448,  1486
448,  1485
448,  1399
448,  1398
448,  1397
448,  1396
448,  1373
448,  1372
448,  1371
448,  1370
448,  1369
448,  1368
448,  1367
448,  1303
448,  1302
448,  1301
448,  1300
448,  1299
448,  1298
448,  1297
448,  1277
448,  1276
448,  1275
448,  1274

1-2.txt
Pline
 2
448 1740
448 1739
448 1738
............// здесь должна быть строка встречается ниже
............// которая и по Х и по У не должна быть <>2
............// к примеру внизу есть строка 449,  1740 она соседная по Y
...........// это все координаты одной линии и так до конца мемо
   Pen (2,2,8388863)

Pline
 2
448 1709
448 1708
448 1707
448 1706
448 1705
   Pen (2,2,8388863)

Pline
 2
448 1665
448 1664
448 1652
448 1651
   Pen (2,2,8388863)


 
Сеньор ©   (2013-08-25 18:52) [3]

Придется суда прям написать
Файл 1-1.txt ниже 1-2.txt
448,  1740
448,  1739
448,  1738
448,  1709
448,  1708
448,  1707
448,  1706
448,  1705
448,  1665
448,  1664
448,  1652
448,  1651
448,  1632
448,  1631
448,  1630
448,  1629
448,  1585
448,  1584
448,  1583
448,  1582
448,  1581
448,  1580
448,  1569
448,  1568
448,  1567
448,  1566
448,  1529
448,  1528
448,  1527
448,  1526
448,  1487
448,  1486
448,  1485
448,  1399
448,  1398
448,  1397
448,  1396
448,  1373
448,  1372
448,  1371
448,  1370
448,  1369
448,  1368
448,  1367
448,  1303
448,  1302
448,  1301
448,  1300
448,  1299
448,  1298
448,  1297
448,  1277
448,  1276
448,  1275
448,  1274

1-2.txt
Pline
 2
448 1740
448 1739
448 1738
............// здесь должна быть строка встречается ниже
............// которая и по Х и по У не должна быть <>2
............// к примеру внизу есть строка 449,  1740 она соседная по Y
...........// это все координаты одной линии и так до конца мемо
   Pen (2,2,8388863)

Pline
 2
448 1709
448 1708
448 1707
448 1706
448 1705
   Pen (2,2,8388863)

Pline
 2
448 1665
448 1664
448 1652
448 1651
   Pen (2,2,8388863)


 
Sha ©   (2013-08-25 19:27) [4]

Вот это

"строка, которая и по Х и по У не должна быть <>2"

что означает?


 
Сеньор ©   (2013-08-25 19:48) [5]

представьте координатную сетку каждая строка координаты одной точки,          к примеру 448 1665 - одна точка 448 1664 вторая точка по У меньше на 1 находится по соседству точки одной линии
а 448 1652 точки другой линии, хотя если далее встретятся строки                  с 448 1664 .....по 448  1651 это будет одна линия, алгоритм сложный не могу составить


 
Sha ©   (2013-08-25 20:02) [6]

Какие min и max значения x, y?

Сколько линий может быть?

Надо пройтись по всем возможным линиям
или побывать в каждой точке линии хотя бы раз?


 
Сеньор ©   (2013-08-25 20:19) [7]

произвольно все линии могут бы до фига  
к примеру строка  1 1     далее
идет строка 5 5  

если далее где-то в середине встретится строки или в конце файла
1 2; 2 2; 3 2; 3 3; 3 4; 4 4; 4 5; то получается диагональ все это координаты одной линии и их надо вырезать и вставить между строками 1 1 и 5 5
такой алгоритм сделать возможно?


 
Сеньор ©   (2013-08-25 20:21) [8]

если координаты не соприкасаются, то это уже друга линия


 
Sha ©   (2013-08-25 20:44) [9]

На первый вопрос [6] ответь.

Если 2 диагонали пересекаются, как их выводить:
как 2 отрезка?
как 4 отрезка?
как 2 знака > и < ?
или все равно?


 
Сеньор ©   (2013-08-25 20:48) [10]

если две диагонали пересекаются то как 1 линию


 
Sha ©   (2013-08-25 20:54) [11]

На первый вопрос [6] ответь.


> если две диагонали пересекаются то как 1 линию

Это невозможно, т.к. у линии 2 конца, а не 4.


 
Сеньор ©   (2013-08-25 21:11) [12]

по идее там не пересекающихся, попробуй как два, но лучше будет как одна большая полилиния


 
Sha ©   (2013-08-25 21:32) [13]

нет нормальных условий - нет смысла и пробовать


 
ProgRAMmer Dimonych ©   (2013-08-26 02:45) [14]

Судя по тому, что задача сформулирована коряво, можно предположить, что получена она не «сверху», а в процессе решения другой, более общей задачи. И, вероятно, будет полезно указать, что это за более общая задача: ради чего вся эта беготня с координатами и что получится в результате.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2014.06.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.003 c
15-1386707402
Юрий
2013-12-11 00:30
2014.06.22
С днем рождения ! 11 декабря 2013 среда


6-1272873304
Краб
2010-05-03 11:55
2014.06.22
правильно подсчитать контрольную сумму IP пакета.


2-1377531220
dis12345
2013-08-26 19:33
2014.06.22
Установить курсор в вид по умолчанию


2-1377270653
Zheksonz
2013-08-23 19:10
2014.06.22
Sender


15-1386275402
Юрий
2013-12-06 00:30
2014.06.22
С днем рождения ! 6 декабря 2013 пятница





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский